Google Workspace Events API를 사용하여 일정 구독하기

이 페이지에서는 Google Workspace Events API를 간략하게 살펴보고 API를 사용하여 Google Workspace에서 일정을 구독할 수 있습니다.

Google Workspace 이벤트는 Google Workspace 리소스, 리소스의 생성, 업데이트 또는 삭제 시기를 예로 들 수 있습니다 앱에서 구독할 수 있음 관련 일정을 수신할 수 있도록 Google Workspace 리소스에 있습니다.

앱에서 이벤트를 수신하는 방법

앱에서 Google Workspace 이벤트를 수신하려면 Google Workspace 구독을 만드는 Google Workspace Events API 리소스를 배포합니다

Google Workspace Events API를 통해 이벤트를 전송하는 방법을 보여주는 그림
그림 1. 예를 들어 Google Workspace Events API는 채팅 앱
를 통해 개인정보처리방침을 정의할 수 있습니다.

다음 예에서 Google Workspace Events API는 Google Chat 앱에 다음과 같은 이벤트를 전달합니다.

  1. Chat 앱이 Chat 스페이스를 구독합니다.
  2. Chat 스페이스가 변경됩니다. 예를 들어 새 메시지가 게시됩니다. 표시됩니다.
  3. Chat이 의 주제에 이벤트를 전송합니다. Google Cloud Pub/Sub 구독의 알림 엔드포인트 역할을 합니다. 이벤트 변경된 사항에 대한 데이터가 들어 있습니다. 예를 들어 새로운 제품 또는 서비스에 대한 메시지에 대한 자세한 내용을 담은 Message 리소스에 대한 세부 정보가 생성됨.
  4. Chat 앱은 Google Cloud 이벤트를 포함하고 필요한 경우 조치를 취하는 Pub/Sub 메시지

중요한 용어

다음은 Google Workspace Events API:

Google Workspace 이벤트

Google Workspace 리소스에 대한 변경사항 이벤트는 CloudEvents 사양이며 구독 이벤트 또는 수명 주기 이벤트:

구독 이벤트
모니터링 중인 Google Workspace 리소스에 대한 변경사항 Google Chat 스페이스의 새 메시지를 예로 들 수 있습니다 특정 기간에 대한 수신할 세부정보를 선택합니다. 자세한 내용은 Google Workspace 이벤트의 구조
수명 주기 이벤트
Google Workspace 구독에 관한 이벤트입니다. 수명 주기 이벤트 문제 및 구독 상태에 대해 알려주므로 구독 이벤트 누락 방지 기본적으로 구독은 항상 수명 주기 이벤트를 수신합니다. 자세한 내용은 Google Workspace 구독의 수명 주기 이벤트를 참고하세요.
Google Workspace 구독

Google Workspace의 리소스를 모니터링하는 이름이 지정된 항목 애플리케이션입니다. 정기 결제는 Subscription 드림 리소스도 제공합니다 구독은 다음 정보로 정의됩니다.

대상 리소스
모니터링할 Google Workspace 리소스입니다. 이 리소스는targetResource Google Workspace 구독 각 구독은 모니터링할 수 있습니다 어떤 Google Workspace 리소스를 확인할 수 있는지 Google Workspace Events API는 지원되는 Google Workspace 이벤트
이벤트 유형
알림을 받을 변경 유형 대상 리소스에 적용됩니다 예를 들어, Google Chat 스페이스를 사용하는 경우 Google Chat 스페이스에 관한 스페이스 및 하위 리소스(예: 멤버십, 메시지)를 관리합니다.
알림 엔드포인트
Google Workspace 구독은 이벤트를 수신합니다. 이 Google Workspace Events API는 알림 엔드포인트를 생성합니다 Google Cloud Pub/Sub 사용에 대해 자세히 알아보려면 자세한 내용은 Google Cloud Pub/Sub 문서
페이로드 옵션
변경된 리소스에 대해 수신하려는 이벤트 데이터입니다.

지원되는 Google Workspace 이벤트

앱이 이벤트를 수신할 수 있는 이벤트는 구독하세요 다음 표에는 각각에 지원되는 이벤트가 나와 있습니다. 대상 리소스에 대한 액세스를 제공합니다

대상 리소스 지원되는 이벤트
Google Chat 스페이스
  • 메시지
  • 멤버십
  • 리액션
  • 공백
Google Chat 사용자
  • 멤버십
Google Meet 회의 공간
  • 연맹
  • 참여자 세션
  • 녹화
  • 스크립트
Google Meet 사용자
  • 연맹
  • 참여자 세션
  • 녹화
  • 스크립트

자세한 내용은 다음 가이드를 참고하세요.

Google Workspace 이벤트의 구조

Google Workspace 이벤트는 CloudEvents 이후 사양, 이는 이벤트 데이터를 설명하는 업계 표준 방법입니다. Google Workspace 이벤트에는 다음이 포함됩니다.

  • CloudEvent의 속성
  • 데이터 이 변경사항으로 인해 변경된 Google Workspace 리소스에 대한 일정

다음 섹션에서는 Google Workspace 일정입니다.

CloudEvent 속성

Google Workspace 이벤트에 다음과 같은 필수 항목이 포함됩니다. CloudEvents 속성:

속성 설명

datacontenttype

이벤트에서 전달된 데이터 유형입니다.

application/json

id

CloudEvent의 식별자입니다.

spaces/AAAABBBBBBB/spaceEvents/ABCDEFGHIJKLMNO

source

이벤트의 소스입니다. Google Workspace 이벤트의 경우 구독의 전체 리소스 이름입니다. //workspaceevents.googleapis.com/subscriptions/chat-spaces-abcdefg

specversion

이 이벤트에 사용된 CloudEvents 사양 버전입니다.

1.0

subject

이벤트가 발생한 Google Workspace 리소스입니다.

//chat.googleapis.com/spaces/AAAABBBBBBB

time

이벤트가 발생한 타임스탬프입니다(RFC 3339 형식).

2023-09-07T21:37:36.260127Z

type

Google Workspace 이벤트의 유형입니다.

google.workspace.chat.message.v1.created

이벤트 데이터

이벤트 데이터는 구독 대상에 대한 변경사항을 나타내는 페이로드입니다. 대상 리소스의 하위 리소스를 포함합니다. 페이로드에 해당 리소스에 대한 데이터를 포함할지 리소스 또는 변경된 리소스의 이름만 표시할 수도 있습니다.

예를 들어 Chat 스페이스를 구독하는 경우 스페이스의 새 메시지에 관한 일정을 수신할 수 있습니다. 다음 이벤트 관련 이벤트 이벤트 데이터에는 Chat 및 spaces.message 리소스가 생성되었습니다.

구독을 만들 때 리소스 데이터 양을 지정할 수 있습니다. 다음과 같은 이벤트가 포함됩니다.

  • 리소스 데이터 포함: 변경된 필드의 일부 또는 전부를 포함합니다. 리소스도 제공합니다 리소스 데이터를 포함하도록 선택한 경우 구독은 기간은 최대 4시간으로 제한됩니다. 도메인 전체를 사용하는 경우에는 24시간으로 제한됩니다. 위임을 사용합니다.
  • 리소스 데이터 제외: 변경된 리소스 이름만 포함 리소스도 제공합니다 구독 기간은 최대 7일입니다. 다음에 관한 세부정보를 얻기 위해 이벤트가 발생하면 리소스 이름을 사용하여 리소스를 쿼리할 수 있습니다.

이벤트 데이터에 관한 이러한 옵션은 payloadOptions에 표시됩니다. 입력란입니다.

Google Cloud Pub/Sub 메시지로서의 이벤트

Google Workspace Events API 구독은 Google Cloud Pub/Sub를 사용합니다. Google Workspace를 수신하는 알림 엔드포인트로서의 주제 있습니다. 이벤트는 Google Cloud Pub/Sub 메시지로 인코딩됩니다. 내 앱 Google Cloud Pub/Sub 메시지를 처리하여 작업을 수행하거나 있습니다.

다음 예는 100개 이상의 포드에 대한 Chat 스페이스의 업데이트된 메시지에 관한 일정:

 {
    "message":
    {
        "attributes":
        {
            "ce-datacontenttype": "application/json",
            "ce-id": "spaces/SPACE_ID/spaceEvents/SPACE_EVENT_ID",
            "ce-source": "//workspaceevents.googleapis.com/subscriptions/SUBSCRIPTION_ID",
            "ce-specversion": "1.0",
            "ce-subject": "//chat.googleapis.com/spaces/SPACE_ID",
            "ce-time": "2023-09-07T21:37:53.274191Z",
            "ce-type": "google.workspace.chat.message.v1.updated"
        },
        "data": "EVENT_DATA",
        "messageId": "PUBSUB_MESSAGE_ID",
        "orderingKey": "//workspaceevents.googleapis.com/subscriptions/SUBSCRIPTION_ID",
        "publishTime": "2023-09-07T21:37:53.713Z"
    }
}

다음 필드를 참고하세요.

  • attributes: CloudEvent 속성. 여기에는 다음이 포함됩니다. 이벤트 유형 이 경우 일정은 있습니다.
  • data: 업데이트된 이벤트 데이터 spaces.message 리소스이며 Base64로 인코딩된 문자열 형식으로 지정됩니다.
  • messageId: Google Cloud Pub/Sub 메시지의 식별자입니다.

Google Cloud Pub/Sub에서 CloudEvents를 지정하는 방법 자세히 알아보기 메시지에 대한 자세한 내용은 CloudEvents용 Google Cloud Pub/Sub 프로토콜 바인딩을 참조하세요.