Chat uygulamasını diğer hizmetlere ve araçlara bağlama

Bu sayfada, Google Chat uygulamalarının Google Chat dışındaki hizmetlere veya araçlara nasıl bağlanacağı açıklanmaktadır. Chat uygulamaları tek başlarına güçlü olsalar da genellikle diğer sistemlerle birlikte çalışır ve hesapları bağlamak, veri erişimini yetkilendirmek, ek verileri görüntülemek veya kullanıcı tercihlerini yapılandırmak için yardımcı uygulamalar gerektirir.

Ön koşullar

Etkileşim etkinliklerini alıp bunlara yanıt verecek şekilde yapılandırılmış bir Google Chat uygulaması. Etkileşimli bir sohbet uygulaması oluşturmak için kullanmak istediğiniz uygulama mimarisine göre aşağıdaki hızlı başlangıç kılavuzlarından birini tamamlayın:

Kullanıcıdan sohbet uygulaması yapılandırması isteğinde bulunma

Bir isteğin tamamlanması için sohbet uygulamasında doğrudan yapılamayan ek yapılandırma gerekirse normal yanıtın bir parçası olarak kullanıcıya bir yapılandırma URL'si döndürün veya aşağıdaki biçimde özel olarak sunun:

{
  "actionResponse": {
    "type": "REQUEST_CONFIG",
    "url": "CONFIGURATION_URL"
  }
}

Bu, Google Chat'e kullanıcıya özel bir istem sunmasını söyler. Burada CONFIGURATION_URL, kullanıcının ek kimlik doğrulama, yetkilendirme veya yapılandırma için ziyaret edeceği bir bağlantıdır. REQUEST_CONFIG yanıtı, normal yanıt mesajıyla karşılıklı olarak hariç tutulur. Metinler, kartlar veya diğer özellikler yoksayılır.

Yapılandırma isteğini tamamlama

Chat uygulamanızın aldığı her MESSAGE, ADDED_TO_SPACE ve APP_COMMAND etkileşim etkinliği, configCompleteRedirectUrl alanını da içerir. Bu URL'yi, işlem tamamlandığında kullanılacak yapılandırma URL'nizde kodlamanız gerekir. Bu URL'ye yönlendirme, yapılandırma isteğinin karşılandığını Google Chat'e bildirir.

Chat uygulamanız başladığında akış, alınan mesaja bağlıdır. @app help gibi bir mesaja yanıt olarak, sohbet uygulaması ek yapılandırma gerektirmeden bir mesajla yanıt vermelidir.

Kullanıcı, orijinal mesajda sağlanan configCompleteRedirectUrl adresine başarıyla yönlendirildiğinde Google Chat aşağıdaki adımları uygular:

  1. Başlatan kullanıcıya gösterilen istemi silin.
  2. Orijinal mesajı herkese açık hale getirerek alandaki diğer üyelerin görmesini sağlayabilirsiniz.
  3. Orijinal iletiyi aynı sohbet uygulamasına ikinci kez gönderin.

configCompleteRedirectUrl ziyaret etmek yalnızca tek bir kullanıcı mesajını etkiler. Bir kullanıcı, sohbet uygulamasına birden fazla kez mesaj göndermeyi denediyse ve sonuç olarak birden fazla istem aldıysa belirli bir istemi tıklayıp kimlik doğrulama ve yapılandırma sürecini tamamlaması yalnızca söz konusu mesajı etkiler. Diğer mesajlar değiştirilmez.

MESSAGE etkileşim etkinliği bu şekilde yeniden gönderildiğinde orijinal etkinlikle aynı olmalıdır. Ancak MESSAGE etkileşim etkinliklerinin farklılık gösterebileceği bazı durumlar vardır. Örneğin, bir mesajda hem A adlı sohbet uygulaması hem de B adlı sohbet uygulaması bahsediliyorsa ve A adlı sohbet uygulaması, B adlı sohbet uygulamasıyla kimlik doğrulama yapmadan önce normal bir mesajla yanıt verirse kullanıcı mesajı düzenleyebilir. Bu durumda, kullanıcı kimlik doğrulama ve yapılandırma işlemlerini tamamladıktan sonra B sohbet uygulaması, düzenlenmiş mesaj metnini alır.

Chat kullanıcısının kimliğini Chat dışında doğrulama

Bazı durumlarda (ör. bir API için OAuth yetkilendirmesi istenirken) uygulamanızın, kullanıcı kimliğini koruyarak Chat dışındaki bir URL'ye bağlanması gerekir. Bu durumlarda kullanıcıyı tanımlamanın en iyi yolu, hedef uygulamayı Google ile oturum açma ile korumaktır.

Kullanıcı kimliğini almak için oturum açma sırasında verilen kimlik jetonunu kullanın. sub talebi, kullanıcının benzersiz kimliğini içerir ve Google Chat'teki kullanıcı kimliğiyle ilişkilendirilebilir.

bütünlüğünü her zaman doğrulayın.

İki kimlik tam olarak aynı olmasa da zorlanabilir. sub talebinin değerini bir Google Chat users/{user}'e dönüştürmek için değere users/ ekleyin. Örneğin, 123 talebinin değeri, sohbet uygulamanıza gönderilen mesajlardaki users/123 kullanıcı adına eşdeğerdir.