Google Workspace Events API'yi kullanarak etkinliklere abone olma

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

Google Workspace etkinlikleri, kaynakların oluşturulması, güncellenmesi veya silinmesi gibi Google Workspace kaynaklarındaki değişiklikleri ifade eder. Uygulamanız, ilgilendiğiniz alakalı etkinlikleri alabilmek için bir Google Workspace kaynağına abone olabilir.

Uygulamanızın etkinlikleri alma şekli

Uygulamanızın Google Workspace etkinliklerini almasına izin vermek için Google Workspace kaynaklarına abonelik oluşturmak üzere Google Workspace Events API'yi kullanırsınız.

Google Workspace Events API'nin etkinlikleri nasıl sunduğunu gösteren resim.
1. şekil. Google Workspace Events API'nin etkinlikleri bir Chat uygulamasına nasıl ilettiğine dair örnek.

Aşağıdaki örnekte, Google Workspace Events API'nin abonelik aracılığıyla Google Chat uygulamasına nasıl etkinlik sağladığı gösterilmektedir:

  1. Bir Chat uygulaması, Chat alanına abone olduğunda
  2. Sohbet alanı değişir. Örneğin, alanda yeni bir mesaj yayınlandığında.
  3. Chat, Google Cloud Pub/Sub'daki bir konuya bir etkinlik gönderir. Bu konu, aboneliğin bildirim uç noktası olarak işlev görür. Etkinlik, neyin değiştiğiyle ilgili veriler içerir. Örneğin, yeni bir mesajla ilgili etkinlikte oluşturulan Message kaynağıyla ilgili ayrıntılar yer alır.
  4. Chat uygulaması, etkinliği içeren Google Cloud Pub/Sub mesajını işler ve gerekirse işlem yapar.

Önemli terminoloji

Aşağıda, Google Workspace Events API'de kullanılan yaygın terimlerin listesi verilmiştir:

Google Workspace etkinliği

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

Abonelik etkinliği
İzlediğiniz Google Workspace kaynağında yapılan bir değişiklik (ör. 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ı başlıklı makaleyi inceleyin.
Yaşam döngüsü olayı
Google Workspace aboneliğinizle ilgili bir etkinlik. Yaşam döngüsü etkinlikleri, abonelik etkinliklerini kaçırmamak için sizi sorunlar ve aboneliğinizin durumu hakkında bilgilendirir. Varsayılan olarak, aboneliğiniz her zaman yaşam döngüsü etkinliklerini alır. Ayrıntılar için Google Workspace aboneliklerinin yaşam döngüsü etkinlikleri başlıklı makaleyi inceleyin.
Google Workspace aboneliği

Bir Google Workspace uygulamasındaki kaynağı izleyen adlandırılmış bir öğe. Abonelik, 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 gösterilir. Her abonelik yalnızca bir kaynağı izleyebilir. Google Workspace Events API'nin desteklediği Google Workspace kaynaklarını görmek için Desteklenen Google Workspace etkinlikleri başlıklı makaleyi inceleyin.
Etkinlik türleri
Hedef kaynakla ilgili olarak bildirim almak istediğiniz değişiklik türleri. Örneğin, bir Google Chat alanına abone olduysanız alan ve alt kaynaklarıyla (ör. üyelikler ve mesajlar) ilgili 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 edinmek 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 Desteklenen etkinlikler
Google Chat alanları
  • Mesajlar
  • Üyelikler
  • Tepkiler
  • Boşluk
Google Chat kullanıcıları
  • Üyelikler
Google Drive dosyaları
  • Dosyalar
  • Erişim teklifleri
Google Drive ortak drive'ları
  • Dosyalar
  • Erişim teklifleri
Google Meet toplantı alanları
  • Konferanslar
  • Katılımcı oturumları
  • Kayıtlar
  • Transkriptler
Google Meet kullanıcıları
  • Konferanslar
  • Katılımcı oturumları
  • Kayıtlar
  • Transkriptler

Daha fazla bilgi edinmek için aşağıdaki kılavuzlara bakın:

Google Workspace etkinliklerinin yapısı

Google Workspace etkinlikleri, etkinlik verilerini açıklamak için sektör standardı olan CloudEvents spesifikasyonuna uygundur. Google Workspace etkinlikleri şunları içerir:

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

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

CloudEvent özellikleri

Google Workspace etkinlikleri aşağıdaki zorunlu CloudEvents özelliklerini içerir:

Özellik Açıklama Örnek

datacontenttype

Etkinlikte iletilen veri türü.

application/json

id

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

spaces/AAAABBBBBBB/spaceEvents/ABCDEFGHIJKLMNO

source

Etkinliğin kaynağı. Google Workspace etkinlikleri için bu, 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çiminde).

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ı da dahil olmak üzere aboneliğinizin hedef kaynağında yapılan bir değişikliği temsil eden bir yükdü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 etkinlikleri alabilirsiniz. Yeni mesajlarla ilgili etkinliklerde, etkinlik verileri oluşturulan Chat spaces.message kaynağını içeren 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ı veya tüm alanlarını içerir. Kaynak verilerini eklemeyi seçerseniz abonelik süreniz en fazla 4 saat veya alan genelinde yetkilendirme kullanıyorsanız 24 saat ile sınırlıdır.
  • Kaynak verilerini hariç tut: Yalnızca değiştirilen kaynağın adını içerir. Abonelik süreniz 7 güne kadar olabilir. Etkinlikle ilgili ayrıntıları almak için kaynağı kaynak adını kullanarak sorgulayabilirsiniz.

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

Google Cloud Pub/Sub mesajları olarak etkinlikler

Google Workspace Events 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, Google Cloud Pub/Sub mesajını işleyerek etkinliğe yanıt verebilir veya etkinlikle ilgili işlem yapabilir.

Aşağıdaki örnekte, bir Chat alanındaki güncellenmiş mesajla ilgili bir etkinlik içeren 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'in özellikleri. Bu durumda etkinlik, alandaki güncellenmiş bir mesajla ilgilidir.
  • data: Güncellenen spaces.message kaynağıyla ilgili ayrıntıları içeren etkinlik verileri, Base64 kodlu dize olarak biçimlendirilmiş.
  • messageId: Google Cloud Pub/Sub mesajının tanımlayıcısı.

CloudEvents'in Google Cloud Pub/Sub mesajlarında nasıl belirtildiği hakkında daha fazla bilgi edinmek için Google Cloud Pub/Sub Protocol Binding for CloudEvents başlıklı makaleyi inceleyin.