Google Chat'teki etkinliklerle çalışma

Bu sayfada, Google Chat uygulamalarının Google Chat'teki etkinlikleri nasıl alıp yanıtlayabileceği açıklanmaktadır.

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

Etkinlikleri nasıl kullanabileceğinize dair bazı örnekler:

  • Bir alandaki yeni mesajları izleme ve yanıtlama (ör. anahtar kelimeleri veya ifadeleri kontrol etme)
  • Alana katılan kullanıcılara karşılama mesajı göndererek alan kurallarını açıklayın veya Chat uygulamasını etkili bir şekilde kullanmayla ilgili ipuçları paylaşın.
  • Chat etkinliğini izleme ve analiz etme Örneğin, yeni üyeler veya en çok tepki ya da yanıt alan mesajlar hakkında aylık rapor göndermek için.
  • Mesajlaşma platformları arasında iletişim kurun. Örneğin, kullanıcılar Chat'ten ayrılmadan farklı bir mesajlaşma platformundaki kullanıcılardan mesaj gönderip alabilir.

Etkinliklerin işleyiş şekli

Google Chat'te bir olay gerçekleştiğinde Google Chat API kaynağı oluşturulur, güncellenir veya silinir. Chat, etkinlikleri kullanarak Chat uygulamanıza gerçekleşen etkinlik türü ve etkilenen Chat API kaynağı hakkında bilgi verir.

Google Chat alanında yayınlanan bir mesajın nasıl etkinlik tetiklediğiyle ilgili örnek.
Şekil 1. Bir kullanıcı, Chat alanında mesaj yayınlar. Bu işlem, Message kaynağı oluşturur. 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 bilgileri filtrelemenize ve almanıza yardımcı olur. Ayrıca 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ü
Bir kullanıcı Chat alanında mesaj yayınladığında Message kaynağı oluşturulur. Yeni mesaj
Bir kullanıcı alan yöneticisi olduğunda Membership kaynağı güncellendiğinde Üyelik güncellendi
Bir kullanıcı mesaja tepki verdiğinde Reaction kaynağı oluşturulur. Yeni tepki
Bir kullanıcı alandan ayrıldığında Membership kaynağı silindiğinde Silinen üyelik

Google Chat'ten etkinlik alma

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

  • Etkinlikleri gerçekleşir gerçekleşmez almak için Google Workspace Events API'yi kullanarak etkinliklere abone olun.
  • Chat API'yi çağırarak son etkinlikleri sorgulayın.

Aşağıdaki tabloda, etkinlikleri sorgulama veya etkinliklere abone olma arasındaki fark ve nedenler açıklanmaktadır:

Etkinliklere abone olma Etkinlik sorgusu
Kullanım alanları
  • Etkinlikleri anında işleyin veya yanıtlayın.
  • Kullanıcıların üyelik etkinliklerini izleyin ve izlenecek yeni alanlar keşfedin.
  • Etkinlikleri belirli aralıklarla veya tetikleyici aracılığıyla işleme ya da yanıtlama
  • Abonelikten kaçırılan etkinlikleri getirme (kesinti veya etkin olmayan abonelik nedeniyle).
API Google Workspace Events API Chat API
Etkinlik kaynağı Alanlar, kullanıcılar ve Google Workspace kuruluşları ( geliştirici önizlemesi) Yalnızca alanlar
Desteklenen etkinlikler
  • Mesajlar
  • Üyelikler
  • Tepkiler
  • Boşluk

Desteklenen etkinlik türlerinin listesi için Google Workspace Events API belgelerindeki Abonelik oluşturmak için etkinlik türleri başlıklı makaleyi inceleyin.
  • Mesajlar
  • Üyelikler
  • Tepkiler
  • Boşluk

Desteklenen etkinlik türlerinin listesi için Chat API referans belgelerindeki 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 içeren veya içermeyen Base64 kodlu dize. Örnek 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. Örnek yükler için referans belgelerine bakın.

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

Bu örnekte, bir Chat uygulaması, Chat alanının üyelerinde yapılan değişikliklerle ilgili bilgileri almak istiyor. Alanda aşağıdaki üyelik etkinliği gerçekleşir:

  • Bir kullanıcı alana katıldığında Membership kaynağı oluşturulur ve yeni üye etkinliği tetiklenir.
  • Bir kullanıcı alan yöneticisi olduğunda, kullanıcı için Membership kaynağı güncellenir ve güncellenmiş bir üye etkinliği tetiklenir.
  • Bir kullanıcı alandan ayrıldığında, kullanıcının Membership kaynağı silinir ve üye silindi etkinliği tetiklenir.

Üyelik etkinliklerine abone olma

Etkinlikleri gerçek zamanlı olarak almak için Chat uygulaması, tüm üyelik etkinliklerine yönelik olarak alana abone olmak üzere Google Workspace Events API'nin subscriptions.create() yöntemini çağırır. Abonelik oluşturulduktan sonra Sohbet uygulaması, üyelik etkinliklerini almaya başlayabilir.

Google Workspace Events API'yi kullanarak etkinliklere abone olan bir Chat uygulaması.
Şekil 2. Bir Chat uygulaması, Google Workspace Events API'yi kullanarak abonelik üzerinden üyelik etkinlikleri alır.

Şekil 2'de, Chat uygulamasının alana etkin bir aboneliği vardır. Bu nedenle, alandaki üyelik her değiştiğinde uygulama bir etkinlik alır. Chat uygulaması daha sonra, alana katılan üyeye özel bir karşılama mesajı gönderme gibi etkinlikleri gerçek zamanlı olarak işleyebilir veya yanıtlayabilir.

Google Workspace Events API'yi kullanarak abonelik oluşturma hakkında bilgi edinmek için Google Workspace Events API belgelerine bakın.

Son üyelik etkinlikleri için sorgu oluşturma

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

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

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

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

Sınırlamalar ve yayın davranışları

Genel sınırlamalar

  • Üyelik etkinliklerini almak için kullanıcının veya Chat uygulamasının alanın doğrudan üyesi olması gerekir. Google Grubu aracılığıyla dolaylı olarak alana eklenen, güncellenen veya alandan kaldırılan abonelikler, bu üyelik etkinliklerini almaz. Google Grubu üyeliklerinin nasıl çalıştığını anlamak için Alana Google Grubu ekleme başlıklı makaleyi inceleyin.

Kullanıcı abonelikleri

  • Kullanıcı abonelikleri için, doğrudan mesajlardaki veya adsız grup sohbetlerindeki yeni üyelerle ilgili etkinlikler (google.workspace.chat.membership.v1.created) yalnızca ilk mesaj gönderildikten sonra tetiklenir.

Müşteri abonelikleri ( geliştirici önizlemesi)

Müşteri abonelikleri için aşağıdaki sınırlamalar geçerlidir:

  • Google Workspace kuruluşunda en az bir Enterprise SKU lisansı olmalıdır. Bu koşulun, geliştirici önizleme programı aşamasında katı bir şekilde uygulanmadığını ancak gelecekte (ayrıca duyurulacak) uygulanacağını unutmayın.
  • Bir Chat uygulaması, belirli bir Google Workspace kuruluşu için yalnızca bir müşteri aboneliği oluşturabilir. Bir Google Workspace kuruluşunda toplamda en fazla beş müşteri aboneliği (farklı Chat uygulamaları tarafından oluşturulan) olabilir.

Müşteri aboneliklerinde etkinlik teslimi için şu genel kurallar geçerlidir:

  • Alan etkinlikleri: Yalnızca etkinliğin Google Workspace kuruluşunuz tarafından yönetilen bir alanda gerçekleşmesi durumunda gönderilir.
  • Kullanıcı etkinlikleri: Yalnızca Google Workspace kuruluşunuza ait bir kullanıcı için etkinlik gerçekleşirse gönderilir.

Bu kuralların tek istisnası üyelik etkinlikleridir. Aboneliğiniz, hem kuruluşunuz tarafından yönetilen alanlardan hem de harici kuruluşlar tarafından yönetilen alanlardan üyelik etkinlikleri alabilir. Ancak bu etkinliklerin nasıl iletileceği, alanı hangi kuruluşun yönettiğine bağlıdır:

Google Workspace kuruluşunuz tarafından yönetilen alanlar

Google Workspace kuruluşu tarafından yönetilen bir alanda üyelik değişikliği olursa bu değişiklik alan etkinliği olarak iletilir.

Bir alan etkinliğinin kaynak adı aşağıdaki biçimi kullanır:

spaces/{spaceId}/spaceEvents/{spaceEventId}

Harici kuruluşlar tarafından yönetilen alanlar

Google Workspace kuruluşunuz tarafından yönetilen bir kullanıcının üyeliği, kuruluş dışı bir kuruluş tarafından yönetilen bir alanda (örneğin, kuruluş dışı bir kullanıcının oluşturduğu doğrudan mesaj veya kuruluş dışı bir adlandırılmış alan) değişirse aboneliğiniz bu etkinliği kullanıcı etkinliği olarak alır.

Bir kullanıcı etkinliğinin kaynak adı şu biçimde olur:

users/{userId}/userEvents/{userEventId}