Bu sayfada, Chat uygulamanızın kullanıcılara yanıt vermek için nasıl iletişim kutuları açabileceği açıklanmaktadır.
İletişim kutuları, Chat alanından veya mesajdan açılan pencereli, kart tabanlı arayüzlerdir. İletişim kutusu ve içeriği yalnızca açan kullanıcı tarafından görülebilir.
Chat uygulamaları, çok adımlı formlar da dahil olmak üzere Chat kullanıcılarından bilgi istemek ve toplamak için iletişim kutularını kullanabilir. Form girişleri oluşturma hakkında daha fazla bilgi için Kullanıcılardan bilgi toplama ve işleme başlıklı makaleyi inceleyin.
Ön koşullar
Node.js
Etkileşimli özellikler için etkinleştirilmiş bir Google Chat uygulaması. HTTP hizmetini kullanarak etkileşimli bir Chat uygulaması oluşturmak için bu hızlı başlangıç kılavuzunu tamamlayın.
Python
Etkileşimli özellikler için etkinleştirilmiş bir Google Chat uygulaması. HTTP hizmetini kullanarak etkileşimli bir Chat uygulaması oluşturmak için bu hızlı başlangıç kılavuzunu tamamlayın.
Java
Etkileşimli özellikler için etkinleştirilmiş bir Google Chat uygulaması. HTTP hizmetini kullanarak etkileşimli bir Chat uygulaması oluşturmak için bu hızlı başlangıç kılavuzunu tamamlayın.
Apps Komut Dosyası
Etkileşimli özellikler için etkinleştirilmiş bir Google Chat uygulaması. Apps Komut Dosyası'nda etkileşimli bir Chat uygulaması oluşturmak için bu hızlı başlangıç kılavuzunu tamamlayın.
İletişim kutusu açma
Bu bölümde, aşağıdakileri yaparak nasıl yanıt vereceğiniz ve nasıl bir diyalog oluşturacağınız açıklanmaktadır:
- Kullanıcı etkileşiminden iletişim isteğini tetikleyin.
- Geri dönüp bir iletişim kutusu açarak isteği işleme alın.
- Kullanıcılar bilgileri gönderdikten sonra iletişim kutusunu kapatarak veya başka bir iletişim kutusu döndürerek gönderimi işleyin.
İletişim isteği tetikleme
Chat uygulamaları yalnızca kullanıcı etkileşimlerine (ör. eğik çizgi komutu veya karttaki bir mesajdan düğme tıklaması) yanıt vermek için iletişim kutuları açabilir.
Chat uygulaması, kullanıcılara iletişim kutusu ile yanıt vermek için iletişim kutusu isteğini tetikleyen bir etkileşim oluşturmalıdır. Örneğin:
- Eğik çizgi komutuna yanıt verme İsteği bir eğik çizgi komutundan tetiklemek için komutu yapılandırırken İletişim kutusu açar onay kutusunu işaretlemeniz gerekir.
- Mesaj'daki bir düğmenin tıklanmasına yanıt verebilirsiniz. Bu düğmeler kartın bir parçası olarak veya mesajın alt kısmında yer alabilir. Bir iletideki düğmeden isteği tetiklemek için düğmenin
interaction
değeriniOPEN_DIALOG
olarak ayarlayarak düğmeninonClick
işlemini yapılandırırsınız. - Chat uygulamasının ana sayfasındaki bir düğmenin tıklanmasına yanıt verme. Ana sayfalardan iletişim kutuları açma hakkında bilgi edinmek için Google Chat uygulamanız için ana sayfa oluşturma başlıklı makaleyi inceleyin.
Aşağıdaki kod örneğinde, bir kart mesajındaki düğmeden iletişim isteği nasıl tetikleneceği gösterilmektedir. İletişim kutusunu açmak için button.interaction
alanı OPEN_DIALOG
olarak ayarlanır:
Node.js
Python
Java
Apps Komut Dosyası
Bu örnek, kart JSON'unu döndürerek bir kart mesajı gönderir. Apps Komut Dosyası kart hizmetini de kullanabilirsiniz.
İlk iletişim kutusunu açma
Bir kullanıcı iletişim isteği tetiklediğinde Chat uygulamanız, Chat API'de event
türü olarak temsil edilen bir etkileşim etkinliği alır. Etkileşim bir iletişim isteği tetiklerse etkinliğin dialogEventType
alanı REQUEST_DIALOG
olarak ayarlanır.
Chat uygulamanız, bir iletişim kutusunu açmak için type
özelliği DIALOG
olarak ayarlanmış bir actionResponse
nesnesi ve Message
nesnesi döndürerek isteğe yanıt verebilir. İletişim kutusunun içeriğini belirtmek için aşağıdaki nesneleri eklemeniz gerekir:
type
özelliğiDIALOG
olarak ayarlanmış biractionResponse
nesnesi.dialogAction
nesnesi.body
alanı, kartta gösterilecek kullanıcı arayüzü (UI) öğelerini (bir veya daha fazlasections
widget dahil) içerir. Kullanıcılardan bilgi toplamak için form giriş widget'ları ve düğme widget'ı belirtebilirsiniz. Form girişlerini tasarlama hakkında daha fazla bilgi edinmek için Kullanıcılardan bilgi toplama ve işleme başlıklı makaleyi inceleyin.
Aşağıdaki kod örneğinde, bir Chat uygulamasının iletişim kutusunu açan bir yanıtı nasıl döndürdüğü gösterilmektedir:
Node.js
Python
Java
Apps Komut Dosyası
Bu örnek, kart JSON'unu döndürerek bir kart mesajı gönderir. Apps Komut Dosyası kart hizmetini de kullanabilirsiniz.
İletişim gönderimini işleme
Kullanıcılar bir iletişim kutusunu gönderen düğmeyi tıkladığında sohbet uygulamanız, dialogEventType
değerinin SUBMIT_DIALOG
olduğu bir CARD_CLICKED
etkileşim etkinliği alır.
Chat uygulamanız, aşağıdakilerden birini yaparak etkileşim etkinliğini işlemelidir:
- Başka bir kartı veya formu doldurmak için başka bir iletişim kutusu döndürün.
- Kullanıcının gönderdiği verileri doğruladıktan sonra iletişim kutusunu kapatın ve isteğe bağlı olarak bir onay mesajı gönderin.
İsteğe bağlı: Başka bir iletişim kutusu döndürme
Kullanıcılar ilk iletişim kutusunu gönderdikten sonra Chat uygulamaları, kullanıcıların göndermeden önce bilgileri incelemesine, çok adımlı formları tamamlamasına veya form içeriğini dinamik olarak doldurmasına yardımcı olmak için bir veya daha fazla ek iletişim kutusu döndürebilir.
Chat uygulaması, kullanıcıların girdiği verileri işlemek için event.common.formInputs
nesnesini kullanır. Giriş widget'larından değer alma hakkında daha fazla bilgi edinmek için Kullanıcılardan bilgi toplama ve işleme başlıklı makaleyi inceleyin.
Kullanıcıların ilk iletişim kutusunda girdikleri tüm verileri takip etmek için sonraki iletişim kutusunu açan düğmeye parametreler eklemeniz gerekir. Ayrıntılı bilgi için Verileri başka bir karta aktarma başlıklı makaleyi inceleyin.
Bu örnekte, bir Chat uygulaması ilk olarak göndermeden önce onay için ikinci bir iletişim kutusuna yönlendiren bir iletişim kutusu açar:
Node.js
Python
Java
Apps Komut Dosyası
Bu örnek, kart JSON'unu döndürerek bir kart mesajı gönderir. Apps Komut Dosyası kart hizmetini de kullanabilirsiniz.
İletişim kutusunu kapat
Kullanıcılar bir iletişim kutusundaki düğmeyi tıkladığında Chat uygulamanız ilişkili işlemi yürütür ve etkinlik nesnesine aşağıdaki bilgileri sağlar:
eventType
CARD_CLICKED
değerini alır.dialogEventType
SUBMIT_DIALOG
değerini alır.
Chat uygulaması, type
özelliği DIALOG
ve dialogAction
olarak ayarlanmış bir ActionResponse
nesnesi döndürmelidir.
İsteğe bağlı: Bildirim gösterin
İletişim kutusunu kapattığınızda metin bildirimi de gösterebilirsiniz.
Chat uygulaması, actionStatus
ayarlanmış bir ActionResponse
döndürerek başarı veya hata bildirimiyle yanıt verebilir.
Aşağıdaki örnekte, parametrelerin geçerli olup olmadığı kontrol edilir ve sonuca bağlı olarak iletişim kutusu metin bildirimiyle kapatılır:
Node.js
Python
Java
Apps Komut Dosyası
Bu örnek, kart JSON'unu döndürerek bir kart mesajı gönderir. Apps Komut Dosyası kart hizmetini de kullanabilirsiniz.
Parametreleri iletişim kutuları arasında iletme hakkında ayrıntılı bilgi için Verileri başka bir karta aktarma başlıklı makaleyi inceleyin.
İsteğe bağlı: Onay mesajı gönderin
İletişim kutusunu kapatarak yeni bir mesaj gönderebilir veya mevcut bir mesajı güncelleyebilirsiniz.
Yeni bir mesaj göndermek için type
NEW_MESSAGE
olarak ayarlanmış bir ActionResponse
nesnesi döndürün. Aşağıdaki örnekte, metin bildirimi ve onay metin mesajıyla iletişim kutusu kapatılmaktadır:
Node.js
Python
Java
Apps Komut Dosyası
Bu örnek, kart JSON'unu döndürerek bir kart mesajı gönderir. Apps Komut Dosyası kart hizmetini de kullanabilirsiniz.
Bir mesajı güncellemek için güncellenmiş mesajı içeren ve type
değerini aşağıdakilerden birine ayarlayan bir actionResponse
nesnesi döndürün:
UPDATE_MESSAGE
: İletişim isteğini tetikleyen mesajı günceller.UPDATE_USER_MESSAGE_CARDS
: Bağlantı önizlemesinden kartı günceller.
Sorun giderme
Bir Google Chat uygulaması veya kartı hata döndürdüğünde Chat arayüzünde "Bir hata oluştu" mesajı gösterilir. veya "İsteğiniz işlenemiyor." Bazen Chat kullanıcı arayüzünde hata mesajı gösterilmez ancak Chat uygulaması veya kartı beklenmedik bir sonuç verir. Örneğin, kart mesajı görünmeyebilir.
Chat kullanıcı arayüzünde hata mesajı gösterilmeyebilir ancak Chat uygulamaları için hata günlüğü etkinleştirildiğinde hataları düzeltmenize yardımcı olacak açıklayıcı hata mesajları ve günlük verileri kullanılabilir. Hataları görüntüleme, hata ayıklama ve düzeltme hakkında yardım için Google Chat hatalarını giderme başlıklı makaleyi inceleyin.
İlgili konular
- İletişim bilgilerini toplamak için iletişim kutularını kullanan bir Chat uygulaması olan Kişi Yöneticisi örneğini görüntüleyin.
- Google Chat uygulamasının ana sayfasından iletişim kutularını açma.
- Eğik çizgi komutları oluşturma ve bunlara yanıt verme
- Kullanıcılar tarafından girilen işlem bilgileri