Google Chat'teki etkinliklerle çalışma

Bu sayfada, Google Chat uygulamalarının Google Chat'teki etkinlikleri nasıl alabileceği ve yanıt verebileceği açıklanmaktadır.

Google Chat etkinliği, Chat'teki bir etkinliği veya değişikliği (ör. alandaki yeni bir mesaj) temsil eder. Chat uygulamanız, neler olduğunu anlamak, işlem yapmak veya kullanıcılarınız için anlamlı bir şekilde yanıt vermek için etkinlikleri kullanabilir.

Aşağıda, etkinlikleri nasıl kullanabileceğinize ilişkin bazı örnekler verilmiştir:

  • Bir alandaki yeni mesajları izleyip yanıtlayın (ör. anahtar kelimeleri veya kelime öbeklerini kontrol etme).
  • Alana katılan kullanıcılara, alan kurallarını açıklamak veya Chat uygulamasının etkili bir şekilde kullanılmasıyla ilgili ipuçları vermek için karşılama mesajı gönderin.
  • Chat etkinliğini izleme ve analiz etme. Örneğin, yeni üyeler veya en çok tepki veya yanıt alan mesajlar hakkında aylık rapor göndermek için.
  • Farklı mesajlaşma platformlarında iletişim kurun. Örneğin, kullanıcılar farklı bir mesajlaşma platformundaki kullanıcılardan Chat'ten ayrılmadan mesaj gönderip alabilir.

Etkinliklerin işleyiş şekli

Google Chat'te bir işlem söz konusu olduğunda, bir Google Chat API kaynağı oluşturulur, güncellenir veya silinir. Chat, gerçekleşen etkinliğin türü ve etkilenen Chat API kaynağı hakkında Chat uygulamanıza bilgi göndermek için etkinlikleri kullanır.

Google Chat alanında yayınlanan bir mesajın nasıl etkinliği tetiklediğini gösteren örnek.
Şekil 1. Kullanıcı, Chat alanında mesaj yayınladığında Message kaynağı oluşturulur. Ardından Chat, yeni mesajla ilgili verileri içeren bir etkinlik oluşturur.

Chat, etkinlikleri türe göre sınıflandırır. Etkinlik türleri, yalnızca ihtiyacınız olan bilgi türünü filtreleyip almanıza yardımcı olur ve benzer etkinlikleri aynı şekilde yönetmenizi sağlar.

Aşağıdaki tabloda, Chat'teki bir etkinliğin ilgili Chat API kaynağını nasıl etkilediği ve Chat uygulamanızın aldığı etkinlik türü gösterilmektedir:

Etkinlik Chat API kaynağı Etkinlik türü
Kullanıcı Chat alanında mesaj yayınlar Bir Message kaynağı oluşturulur. Yeni mesaj
Kullanıcı, alan yöneticisi olur. Bir Membership kaynağı güncellendi. Üyelik güncellendi
Kullanıcı bir mesaja tepki verdiğinde. Bir Reaction kaynağı oluşturulur. Yeni tepki
Bir kullanıcı alandan ayrılır. Bir Membership kaynağı silindi. Üyelik silindi

Google Chat'ten etkinlik alma

Chat uygulamanız, etkinlikleri almak için aşağıdakilerden birini yapabilir:

  • Etkinlikleri gerçekleştiği anda almak için Google Workspace Events API'yi kullanarak etkinliklere abone olun.
  • Chat API'yi çağırarak son etkinlikleri sorgulama.

Aşağıdaki tabloda, etkinliklerin sorgulanması veya etkinliklere abone olma nedenleri ve farklılıkları açıklanmaktadır:

Etkinliklere abone olma Etkinlikler için sorgu
Kullanım alanları
  • Etkinlikleri gerçek zamanlı olarak işleyin veya yanıtlayın.
  • Kullanıcıların üyelik etkinliğini izleyin ve izlenecek yeni alanlar keşfedin.
  • Etkinlikleri periyodik olarak ya da bir tetikleyici aracılığıyla işleme veya yanıtlama.
  • Bir abonelikteki kaçırılan etkinlikleri (kesinti veya etkin olmayan abonelik nedeniyle) getirme.
API Google Workspace Events API Chat API
Etkinliklerin kaynağı Alanlar ve kullanıcılar Yalnızca alanlar
Desteklenen etkinlikler
  • Mesajlar
  • Üyelikler
  • Tepkiler
  • Alan

Desteklenen etkinlik türlerinin listesi için Google Workspace Events API dokümanlarında Abonelik oluşturmak için etkinlik türleri bölümüne bakın.
  • Mesajlar
  • Üyelikler
  • Tepkiler
  • Alan

Desteklenen etkinlik türlerinin listesi için Chat API referans dokümanlarındaki spaceEvents kaynağına bakın.
Etkinlik biçimi CloudEvent spesifikasyonuna göre biçimlendirilmiş bir Google Cloud Pub/Sub mesajı. Ayrıntılar için Google Workspace etkinliklerinin yapısı başlıklı makaleyi inceleyin. Chat API kaynağı ( spaces.spaceEvent)
Etkinlik verileri Kaynak verileri olan veya olmayan Base64 kodlu dize. Yükler için Etkinlik verileri bölümüne bakın. Kaynak verilerini içeren JSON yükü. Bazı etkinlik türleri yalnızca belirli kaynak alanlarını içerir. Yükler için referans belgelerine bakın.

Örnek: Bir alandaki üyeliklerle ilgili etkinlikleri sorgulama veya abone olma

Bu örnekte, bir Chat uygulaması, Chat alanının üyelerinde yapılan değişiklikler hakkında bilgi almak istiyor. Alanda aşağıdaki üyelik etkinlikleri gerçekleşir:

  • Bir kullanıcı alana katıldığında Membership kaynağı oluşturulur ve yeni bir üye etkinliği tetiklenir.
  • Kullanıcı, alan yöneticisi hâline gelir. Bu durumda kullanıcının Membership kaynağı güncellenir ve güncellenmiş üye etkinliği tetiklenir.
  • Bir kullanıcı alandan ayrılır. Bu durumda kullanıcı için Membership kaynağı silinir ve üyenin silinmesi işlemi tetiklenir.

Üyelik etkinliklerine abone olma

Chat uygulaması, etkinlikleri gerçek zamanlı olarak almak için Google Workspace Events API subscriptions.create() yöntemini çağırarak alana her türlü üyelik etkinliği için abone olur. Aboneliği oluşturduktan sonra Chat uygulaması üyelik etkinliklerini almaya başlayabilir.

Google Workspace Events API'yi kullanarak etkinliklere abone olan Chat uygulaması.
Şekil 2. Chat uygulamaları, Google Workspace Events API'yi kullanan bir abonelik aracılığıyla üyelik etkinlikleri alır.

Şekil 2'de Chat uygulamasının alana etkin bir aboneliği vardır. Bu nedenle, alandaki bir üyelik her değiştiğinde uygulama bir etkinlik alır. Böylece Chat uygulaması, alana katılan üyeye özel bir karşılama mesajı yayınlamak gibi etkinliklerden herhangi birini gerçek zamanlı olarak işleyebilir veya bunlara yanıt verebilir.

Google Workspace Events API'yi kullanarak abonelik oluşturma hakkında bilgi edinmek için Google Workspace Events API dokümanlarını inceleyin.

En son üyelik etkinlikleri için sorgu

Chat uygulaması, üyelik etkinliklerini gerçekleştiği anda almak yerine, üyelik etkinliğiyle ilgili son alan etkinliklerini listelemek için Chat API'yi çağırabilir.

Chat API'yi kullanarak etkinlikleri sorgulayan Chat uygulamasıdır.
Şekil 3. Chat uygulamaları, Chat API'yi kullanarak alan etkinliklerini sorgulayarak son üyelik etkinliklerini alır.

3. Şekilde bir Chat uygulaması, tüm üyelik etkinlikleri gerçekleştikten sonra Chat API spaces.spaceEvents.list() yöntemini çağırır ve sorguyu yeni, güncellenmiş ve silinen üyelik etkinliklerine göre filtreler. Chat API, üyelik değişikliklerinin her birini temsil eden spaceEvent kaynaklarının listesini döndürür. Ardından Chat uygulaması son etkinliğe göre işlemleri yapabilir veya yanıt verebilir. Örneğin, alanın son 7 gündeki üyelik etkinliğinin özetini içeren haftalık bir mesaj yayınlayabilir.

Chat API'yi kullanarak etkinlikleri sorgulamak için Bir Google Chat alanındaki etkinlikleri listeleme başlıklı makaleyi inceleyin.

Sınırlamalar

  • Kullanıcı abonelikleri söz konusu olduğunda, doğrudan mesajlardaki veya adsız grup sohbetlerindeki (google.workspace.chat.membership.v1.created) yeni üyelerle ilgili etkinlikler yalnızca ilk mesaj yayınlandıktan sonra tetiklenir.
  • Üyelik etkinliklerini almak için kullanıcının alanın doğrudan üyesi olması gerekir. Bir kullanıcı, bir Google Grubu aracılığıyla bir alana dolaylı olarak eklenmiş, güncellenmiş veya kaldırılmışsa abonelik bu üyelik etkinliklerini almaz. Google Grubu üyeliklerinin işleyiş şeklini öğrenmek için Alana Google Grubu ekleme başlıklı makaleyi inceleyin.