Kullanıcı etkileşimlerini alın ve yanıtlayın

Bu sayfada, Google Chat uygulamanızın kullanıcı etkileşimlerini nasıl alabileceği ve bunlara nasıl yanıt verebileceği açıklanmaktadır. Buna Google Chat uygulama etkileşim etkinlikleri de denir.

Google Chat uygulaması etkileşim etkinliği, kullanıcının bir Chat uygulamasını çağırmak veya uygulamayla etkileşimde bulunmak için gerçekleştirdiği herhangi bir işlemi (ör. bir Chat uygulamasından @bahsetme veya uygulamayı bir alana ekleme) temsil eder. Kullanıcılar bir Chat uygulamasıyla etkileşimde bulunduğunda Google Chat, Chat uygulamasına bir etkileşim etkinliği gönderir. Chat uygulaması, etkileşimi işlemek ve yanıt oluşturmak için etkinliği kullanabilir.

Örneğin, Chat uygulamaları aşağıdakilerden herhangi birini yapmak için etkileşim etkinliklerini kullanır:

Etkileşim etkinliği örneği Chat uygulamalarından alınan normal yanıt
Kullanıcı, bir Chat uygulamasını @bahsederek veya eğik çizgi komutu kullanarak çağırır. Chat uygulaması, mesaj oluşturmak için mesajda belirtilenleri işler. Örneğin, bir Chat uygulaması /about komutuna Chat uygulamasının yapabileceği görevleri açıklayan bir mesajla yanıt verir.
Kullanıcı, alana bir Chat uygulaması ekler. Chat uygulaması, işlevini ve alandaki kullanıcıların uygulamayla nasıl etkileşim kurabileceğini açıklayan bir ilk katılım mesajı gönderir.
Kullanıcı, alandan bir Chat uygulamasını kaldırır. Chat uygulaması, alan için yapılandırılmış tüm gelen bildirimleri (ör. webhook silme) kaldırır ve dahili depolama alanını temizler.
Kullanıcı, Chat uygulaması tarafından gönderilen bir karttaki veya iletişim kutusundaki bir düğmeyi tıklar. Chat uygulaması, kullanıcının gönderdiği verileri işleyip depolar veya başka bir kart ya da iletişim kutusu döndürür.

Google Chat, her kullanıcı etkileşimi türü için farklı türde bir etkileşim etkinliği gönderir. Böylece Chat uygulamanızın her etkinlik türünü uygun şekilde işlemesine yardımcı olur. Örneğin Google Chat, bir kullanıcının Chat uygulamasını bir alana eklediği her etkileşim için ADDED_TO_SPACE etkinlik türünü kullanır. Böylece Chat uygulaması, alana karşılama mesajı yayınlama gibi yanıtları işleyebilir. Desteklenen tüm etkileşim etkinliklerini görmek için EventType referans belgelerini inceleyin.

Bu sayfada, aşağıdakileri nasıl yapacağınız açıklanmaktadır:

  • Chat uygulamanızı etkinlikleri alacak şekilde yapılandırın.
  • Etkileşim etkinliğini altyapınızda işleyin.
  • Uygun durumlarda etkileşim etkinliklerine yanıt verin.

Chat uygulaması etkileşim etkinlikleri alma

Bu bölümde, Chat uygulamanızdaki etkileşim etkinliklerini nasıl alacağınız ve işleyebileceğiniz açıklanmaktadır.

Chat uygulamanızı etkileşim etkinliklerini alacak şekilde yapılandırma

Bazı Chat uygulamaları etkileşimli değildir. Örneğin, gelen webhook'lar yalnızca giden mesajları gönderebilir ve kullanıcılara yanıt veremez. Etkileşimli bir Chat uygulaması oluşturuyorsanız Chat uygulamanızın etkileşim etkinliklerini almasına, işlemesine ve yanıtlamasına olanak tanıyan bir uç nokta seçmeniz gerekir. Chat uygulamanızı tasarlama hakkında daha fazla bilgi edinmek için Chat uygulamaları uygulama mimarileri başlıklı makaleyi inceleyin.

Etkileşimli bir Chat uygulaması oluşturduysanız Google Chat'in size etkileşim etkinlikleri gönderebilmesi için Google Chat API'yi yapılandırmanız gerekir:

  1. Google Cloud konsolunda Google Chat API sayfasını açın:

    Google Chat API sayfasına git

  2. Configuration (Yapılandırma) sekmesini tıklayın.
  3. Etkileşimli özellikler bölümünde Etkileşimli özellikleri etkinleştir düğmesini tıklayarak açık konuma getirin.
  4. İşlevsellik bölümünde aşağıdaki onay kutularının birini veya her ikisini seçin:
    1. Bire bir mesaj alma: Kullanıcıların doğrudan mesaj (DM) alanlarında Chat uygulamanızla etkileşimde bulunmasına olanak tanır. Bir kullanıcı DM alanında her mesaj gönderdiğinde Chat uygulamanız etkileşim etkinliği alır.
    2. Alanlara ve grup görüşmelerine katılma: Kullanıcıların Chat uygulamanızı birden fazla kişinin bulunduğu alanlara eklemesine ve kaldırmasına olanak tanır. Chat uygulamanız alana eklendiğinde veya alandan kaldırıldığında ve kullanıcılar alanda @bahsedildiğinde veya alanda eğik çizgi komutu kullandığında etkileşim etkinlikleri alır.
  5. Bağlantı ayarları'nda, Google Chat'in Chat uygulaması etkileşim etkinliklerini nereye göndereceğini belirtin.
  6. İsteğe bağlı: Eğik çizgi komutları'nda bir veya daha fazla eğik çizgi komutu ekleyin ve yapılandırın. Daha fazla bilgi için Eğik çizgi komutları ayarlama konusuna bakın.
  7. İsteğe bağlı: Bağlantı önizlemeleri bölümünde, Chat uygulamanızın önizlediği bir veya daha fazla URL kalıbı ekleyin ve yapılandırın. Daha fazla bilgi için Önizleme bağlantıları konusuna bakın.
  8. Kaydet'i tıklayın.

Chat uygulamanız artık Google Chat'ten etkileşim etkinliklerini alacak şekilde yapılandırılmıştır.

Hizmetinize yönelik HTTP çağrısı yeniden denemelerini işleme

Hizmetinize gönderilen bir HTTPS isteği başarısız olursa (zaman aşımı, geçici ağ hatası veya 2xx olmayan HTTPS durum kodu gibi) Google Chat, teslimi birkaç dakika içinde birkaç kez yeniden deneyebilir (ancak bu garanti edilmez). Sonuç olarak, bir Chat uygulaması belirli durumlarda aynı mesajı birkaç kez alabilir. İstek başarıyla tamamlanır ancak geçersiz bir mesaj yükü döndürürse Google Chat, isteği yeniden denemez.

Etkileşim etkinliklerini işleme veya yanıtlama

Bu bölümde, Google Chat uygulamalarının etkileşim etkinliklerini nasıl işleyebileceği ve bunlara nasıl yanıt verebileceği açıklanmaktadır.

Chat uygulamanız Google Chat'ten bir etkileşim etkinliği aldıktan sonra, çeşitli şekillerde yanıt verebilir. Çoğu durumda, etkileşimli Chat uygulamaları kullanıcıya bir mesajla yanıt verir. Google Chat uygulaması ayrıca bir veri kaynağındaki bazı bilgileri arayabilir, etkileşim etkinliği bilgilerini veya neredeyse her şeyi kaydedebilir. Bu işleme davranışı, temelde Google Chat uygulamasını tanımlayan şeydir.

Chat uygulamaları, her etkileşim etkinliği için bir istek gövdesi alır. Bu, etkinliği temsil eden JSON yüküdür. Bu bilgileri kullanarak yanıtları işleyebilirsiniz. Etkinlik yükü örnekleri için Chat uygulaması etkileşim etkinliklerinin türleri bölümüne bakın.

Aşağıdaki şemada, Google Chat uygulamasının genellikle farklı etkileşim etkinliği türlerini nasıl işlediği veya bu etkinliklere nasıl yanıt verdiği gösterilmektedir:

Google Chat uygulamalarının etkileşim etkinliklerini nasıl işlediğine dair mimari.

Anlık olarak yanıtla

Etkileşim etkinlikleri, Chat uygulamalarının gerçek zamanlı olarak veya eş zamanlı olarak yanıt vermesine olanak tanır. Eşzamanlı yanıtlar için kimlik doğrulama gerekmez.

Etkileşim etkinliklerine eşzamanlı yanıtlar oluşturmak için aşağıdaki kılavuzlara bakın:

Eşzamanlı yanıt vermek için Chat uygulamasının 30 saniye içinde yanıt vermesi ve yanıtın etkileşimin gerçekleştiği alanda yayınlanması gerekir. Aksi takdirde, Chat uygulaması eşzamansız olarak yanıt verebilir.

Eşzamansız olarak yanıtla

Chat uygulamaları bazen etkileşim etkinliğine 30 saniye sonra yanıt vermeli veya etkileşim etkinliğinin oluşturulduğu alanın dışında görevler gerçekleştirmelidir. Örneğin, bir Chat uygulamasının uzun süreli bir görevi tamamladıktan sonra kullanıcıya yanıt vermesi gerekebilir. Bu durumda Chat uygulamaları, Google Chat API'yi çağırarak eşzamansız olarak yanıt verebilir.

Chat API'yi kullanarak mesaj oluşturmak için Mesaj oluşturma başlıklı makaleyi inceleyin. Ek Chat API yöntemlerini kullanmayla ilgili kılavuzlar için Chat API'ye genel bakış sayfasını inceleyin.