Google Workspace Events API'yi kullanarak etkinliklere abone olma

Bu sayfada Google Workspace Etkinlikleri API'sine genel bir bakış ve Google Workspace'teki etkinliklere abone olmak için API'yi nasıl kullanabileceğiniz açıklanmaktadır.

Google Workspace etkinlikleri, Google Workspace kaynaklarında yapılan değişiklikleri (ör. kaynakların oluşturulması, güncellenmesi veya silinmesi) temsil eder. Uygulamanız, ilgilendiğiniz ilgili etkinlikleri alabilmeniz için bir Google Workspace kaynağına abone olabilir.

Uygulamanız etkinlikleri nasıl alır?

Uygulamanızın Google Workspace etkinliklerini almasına izin vermek için Google Workspace Etkinlikler API'sini kullanarak Google Workspace kaynaklarına abonelik oluşturursunuz.

Google Workspace Events API'nin nasıl etkinlik yayınladığını gösteren görsel.

Google Workspace Etkinlikleri API'nin bir abonelik üzerinden uygulamanıza nasıl etkinlik gönderdiği aşağıda açıklanmıştır:

  1. Uygulamanız, Google Workspace uygulamasındaki (ör. Google Chat alanı) bir kaynağa abone olduğunda.
  2. Abone olduğunuz kaynak değiştirilebilir.
  3. Google Workspace uygulaması, Google Cloud Pub/Sub'daki bir konuya etkinlik gönderir. Bu etkinlik, Google Workspace aboneliğiniz için bildirim uç noktası görevi görür. Etkinlik, kaynakta neyin değiştiğiyle ilgili verileri içerir.
  4. Uygulamanız, etkinliği içeren Google Cloud Pub/Sub mesajını işliyor ve gerekiyorsa işlem yapıyor.

Önemli terminoloji

Google Workspace Etkinlikleri API'sinde yaygın olarak kullanılan terimlerin listesini aşağıda bulabilirsiniz:

Google Workspace etkinliği

Bir Google Workspace kaynağında yapılan değişiklik. Etkinlikler, CloudEvents spesifikasyonu kullanılarak biçimlendirilir ve abonelik etkinliği veya yaşam döngüsü etkinliği olabilir:

Abonelik etkinliği
İzlemekte olduğunuz Google Workspace kaynağında yapılan bir değişiklik (ör. bir Google Chat alanındaki yeni bir mesaj). Değişen kaynak hakkında ne kadar ayrıntı almak istediğinizi belirtebilirsiniz. Ayrıntılar için Google Workspace etkinliklerinin yapısı bölümüne bakın.
Yaşam döngüsü olayı
Google Workspace aboneliğinizle ilgili bir etkinlik. Yaşam döngüsü etkinlikleri, sorunlar ve aboneliğinizin durumu hakkında sizi bilgilendirir. Böylece abonelik etkinliklerinin kaçırılmasını önleyebilirsiniz. Varsayılan olarak, aboneliğiniz her zaman yaşam döngüsü olaylarını alır. Ayrıntılı bilgiyi Google Workspace abonelikleri için yaşam döngüsü etkinlikleri başlıklı makalede bulabilirsiniz.
Google Workspace aboneliği

Bir Google Workspace uygulamasından gelen kaynağı izleyen, adlandırılmış varlık. Abonelikler, Subscription kaynağıyla temsil edilir. Abonelik aşağıdaki bilgilerle tanımlanır:

Hedef kaynak
İzlemek istediğiniz Google Workspace kaynağı. Bu kaynak, Google Workspace aboneliğinin targetResource alanında temsil edilir. Her abonelik yalnızca bir kaynağı izleyebilir. Google Workspace Etkinlikleri API'sinin hangi Google Workspace kaynaklarını desteklediğini görmek için Desteklenen Google Workspace etkinlikleri başlıklı makaleyi inceleyin.
Etkinlik türleri
Hedef kaynak için bildirim almak istediğiniz değişiklik türleri. Örneğin, bir Google Chat alanına abone olduysanız alan ve alanla ilgili alt kaynaklar (ör. üyelikler ve mesajlar) hakkındaki etkinlikleri alıp almayacağınızı seçebilirsiniz.
Bildirim uç noktası
Google Workspace aboneliğinin etkinlikleri aldığı uç nokta. Google Workspace Events API, bildirim uç noktası olarak Google Cloud Pub/Sub konularını destekler. Google Cloud Pub/Sub'ı kullanma hakkında daha fazla bilgi için Google Cloud Pub/Sub belgelerine bakın.
Yük seçenekleri
Değiştirilen kaynaklar hakkında almak istediğiniz etkinlik verileri.

Desteklenen Google Workspace etkinlikleri

Uygulamanızın etkinlik alabileceği etkinlikler, aboneliğinizin hedef kaynağına bağlıdır. Aşağıdaki tabloda, olası her hedef kaynak için desteklenen etkinlikler gösterilmektedir.

Hedef kaynak Biçim Desteklenen etkinlikler Sınırlamalar (varsa)
Google Chat
Google Chat alanları //chat.googleapis.com/spaces/SPACE_ID
  • Mesajlar
  • Üyelikler
  • Tepkiler
  • Alan

Ayrıntılı bilgi için Google Chat etkinliklerine abone olma başlıklı makaleyi inceleyin.
Aboneliği yetkilendiren Google Chat kullanıcısı, Google Workspace veya Google Hesabı aracılığıyla alanın üyesi olmalıdır.
Google Chat kullanıcıları //cloudidentity.googleapis.com/users/USER_ID
  • Üyelikler

Ayrıntılı bilgi için Google Chat etkinliklerine abone olma başlıklı makaleyi inceleyin.

Abonelik yalnızca aboneliği yetkilendiren kullanıcıyla ilgili etkinlikleri alır. Kullanıcılar, diğer kullanıcılar adına bir aboneliği yetkilendiremez.

Google Meet
Google Meet toplantı alanları //meet.googleapis.com/spaces/SPACE_ID
  • Konferanslar
  • Katılımcı oturumları
  • Kayıtlar
  • Transkriptler

Ayrıntılı bilgi için Google Meet etkinliklerine abone olma başlıklı makaleyi inceleyin.
Google Meet kullanıcıları //cloudidentity.googleapis.com/users/USER_ID
  • Konferanslar
  • Katılımcı oturumları
  • Kayıtlar
  • Transkriptler

Ayrıntılı bilgi için Google Meet etkinliklerine abone olma başlıklı makaleyi inceleyin.

Abonelik, kullanıcının aşağıdakilerden biri olduğu toplantı alanlarıyla ilgili etkinlikleri alır:

  • Toplantı alanının sahibi.
  • Toplantı alanıyla ilişkili Google Takvim etkinliğinin düzenleyicisi.

Google Workspace etkinliklerinin yapısı

Google Workspace etkinlikleri, etkinlik verilerini açıklamanın endüstri standardı bir yolu olan CloudEvents spesifikasyonuna uyar. Google Workspace etkinlikleri aşağıdakileri içerir:

  • CloudEvent'in özellikleri.
  • Etkinlik sonucunda değişen Google Workspace kaynağıyla ilgili veriler

Aşağıdaki bölümde, Google Workspace etkinlikleri için özelliklerin ve verilerin yapısı açıklanmaktadır.

CloudEvent özellikleri

Google Workspace etkinliklerinde aşağıdaki zorunlu CloudEvents özellikleri bulunur:

Özellik Açıklama Örnek

datacontenttype

Etkinlikte geçirilen verilerin türü.

application/json

id

CloudEvent için bir tanımlayıcı.

spaces/AAAABBBBBBB/spaceEvents/ABCDEFGHIJKLMNO

source

Etkinliğin kaynağı. Google Workspace etkinliklerinde aboneliğin tam kaynak adıdır. //workspaceevents.googleapis.com/subscriptions/chat-spaces-abcdefg

specversion

Bu etkinlik için kullanılan CloudEvents spesifikasyon sürümü.

1.0

subject

Etkinliğin gerçekleştiği Google Workspace kaynağı.

//chat.googleapis.com/spaces/AAAABBBBBBB

time

Etkinliğin gerçekleştiği zaman damgası, RFC 3339 biçimindedir.

2023-09-07T21:37:36.260127Z

type

Google Workspace etkinliğinin türü.

google.workspace.chat.message.v1.created

Etkinlik verileri

Etkinlik verileri, hedef kaynağın alt kaynakları dahil olmak üzere aboneliğinizin hedef kaynağında gerçekleşen değişikliği temsil eden bir yüktür. Aboneliğinizde yükün değiştirilen kaynakla ilgili verileri mi yoksa yalnızca değiştirilen kaynağın adını mı içermesini istediğinizi belirtebilirsiniz.

Örneğin, bir Chat alanına aboneyseniz alandaki yeni mesajlarla ilgili etkinlikler alabilirsiniz. Yeni mesajlarla ilgili etkinliklerde etkinlik verileri, oluşturulan Chat spaces.message kaynağının bulunduğu bir yük içerir.

Abonelik oluşturduğunuzda, uygulamanızın aldığı etkinliklere ne kadar kaynak verisi dahil edileceğini belirtebilirsiniz:

  • Kaynak verilerini dahil et: Değiştirilen kaynağın bazı alanlarını veya tüm alanlarını içerir. Kaynak verilerini eklemeyi tercih ederseniz abonelik süreniz 4 saatle (alan genelinde yetki özelliğini kullanıyorsanız 24 saat) sınırlandırılır.
  • Kaynak verilerini hariç tut: Yalnızca değiştirilen kaynağın adını içerir. Abonelik süreniz en fazla 7 gün olabilir. Etkinlik hakkında ayrıntıları almak için kaynak adını kullanarak kaynağı sorgulayabilirsiniz.

Etkinlik verileriyle ilgili bu seçenekler, aboneliğinizin payloadOptions alanında gösterilir.

Google Cloud Pub/Sub mesajları olarak etkinlikler

Google Workspace Etkinlikleri API abonelikleri, Google Workspace etkinliklerini alan bildirim uç noktası olarak Google Cloud Pub/Sub konularını kullanır. Etkinlikler Google Cloud Pub/Sub mesajları olarak kodlanır. Uygulamanız işlem yapmak veya etkinliğe yanıt vermek için Google Cloud Pub/Sub mesajını işleyebilir.

Aşağıdaki örnekte, Chat alanındaki güncellenmiş bir mesaj hakkında etkinlik içeren bir Google Cloud Pub/Sub mesajı gösterilmektedir:

 {
    "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"
    }
}

Aşağıdaki alanlara dikkat edin:

  • attributes: Etkinlik türünü içeren CloudEvent özellikleri. Bu durumda, etkinlik, alandaki güncellenmiş bir mesajla ilgilidir.
  • data: Base64 olarak kodlanmış dize olarak biçimlendirilmiş, güncellenmiş spaces.message kaynağıyla ilgili ayrıntıları içeren etkinlik verileri.
  • messageId: Google Cloud Pub/Sub mesajının tanımlayıcısı.

Google Cloud Pub/Sub mesajlarında CloudEvents'in nasıl belirtildiği hakkında daha fazla bilgi edinmek için CloudEvents için Google Cloud Pub/Sub Protokol Bağlama bölümüne bakın.