Bu kılavuzda, Google Chat uygulamalarının kart tabanlı arayüzlerde form girişleri oluşturarak kullanıcılardan nasıl bilgi toplayıp işleyebileceği açıklanmaktadır.
Chat uygulamaları, Chat'te veya Chat dışında işlem yapmak için kullanıcılardan bilgi ister. Örneğin:
- Ayarları yapılandırın. Örneğin, kullanıcıların bildirim ayarlarını özelleştirmesine veya Chat uygulamasını yapılandırıp bir ya da daha fazla alana eklemesine izin vermek için.
- Diğer Google Workspace uygulamalarında bilgi oluşturma veya güncelleme Örneğin, kullanıcıların Google Takvim etkinliği oluşturmasına izin verin.
- Kullanıcıların diğer uygulamalardaki veya web hizmetlerindeki kaynaklara erişmesine ve bunları güncellemesine izin verin. Örneğin, bir Chat uygulaması, kullanıcıların destek kaydının durumunu doğrudan bir Chat alanından güncellemesine yardımcı olabilir.
Ön koşullar
HTTP
Kullanıcı etkileşimlerini alan ve bunlara yanıt veren bir Google Chat uygulaması. Oluşturmak için HTTP hızlı başlangıç bölümünü tamamlayın.
Apps Komut Dosyası
Kullanıcı etkileşimlerini alan ve bunlara yanıt veren bir Google Chat uygulaması. Oluşturmak için Apps Komut Dosyası hızlı başlangıç kılavuzunu tamamlayın.
Kartları kullanarak form oluşturma
Chat uygulamaları, bilgi toplamak için formlar ve girişler tasarlayıp bunları kartlara yerleştirir. Chat uygulamaları, kullanıcılara kart göstermek için aşağıdaki Chat arayüzlerini kullanabilir:
- Bir veya daha fazla kart içeren mesajlar.
- Chat uygulamasıyla doğrudan mesajlarda Ana Sayfa sekmesinden görünen bir kart olan Ana Sayfalar
- İletişim kutuları: İletilerden ve ana sayfalardan yeni bir pencerede açılan kartlardır.
Sohbet uygulamaları, aşağıdaki widget'ları kullanarak kart oluşturabilir:
Kullanıcılardan bilgi isteyen form girişi widget'ları. İsteğe bağlı olarak, kullanıcıların bilgileri doğru şekilde girmesini ve biçimlendirmesini sağlamak için form girişi widget'larına doğrulama ekleyebilirsiniz. Sohbet uygulamaları aşağıdaki form girişi widget'larını kullanabilir:
- Serbest biçimli veya önerilen metin için metin girişleri
(
textInput) - Seçim girişleri
(
selectionInput), onay kutuları, radyo düğmeleri ve açılır menüler gibi seçilebilir kullanıcı arayüzü öğeleridir. Seçim giriş widget'ları, Google Workspace verilerindeki (ör. Chat alanı) veya dinamik bir veri kaynağındaki öğeleri de doldurup önerebilir. Ayrıntılı bilgi için Açılır menü ekleme ve Çoklu seçim menüsü ekleme başlıklı bölümleri inceleyin. - Tarih ve saat girişleri için tarih/saat seçiciler
(
dateTimePicker).
- Serbest biçimli veya önerilen metin için metin girişleri
(
Kullanıcıların karta girdikleri değerleri gönderebilmeleri için düğme widget'ı. Kullanıcı düğmeyi tıkladıktan sonra Chat uygulaması aldığı bilgileri işleyebilir.
Aşağıdaki örnekte, bir kart metin girişi, tarih/saat seçici ve seçim girişi kullanarak iletişim bilgilerini topluyor:
Bilgi toplamak için kullanabileceğiniz etkileşimli widget'larla ilgili daha fazla örnek için Etkileşimli kart veya iletişim kutusu tasarlama başlıklı makaleyi inceleyin.
Açılır menü ekleme
Chat uygulamaları, seçim öğelerini özelleştirmek veya kullanıcıların dinamik bir veri kaynağından tek bir öğe seçmesine izin vermek için SelectionInput türü bir widget olan açılır menüleri kullanabilir. Örneğin, aşağıdaki kartta kullanıcıların kişi listesinden dinamik olarak seçim yapabileceği bir açılır menü gösterilmektedir:
Açılır menüdeki öğeleri aşağıdaki veri kaynaklarından doldurabilirsiniz:
- Google Workspace verileri (kullanıcılar veya Chat alanları dahil)
- İlişkisel veritabanı gibi harici veri kaynakları.
Google Workspace veri kaynağından öğe doldurma
Google Workspace kullanıcıları gibi Google Workspace veri kaynaklarındaki öğeleri doldurmak için DataSourceConfig nesnesinde platformDataSource alanını belirtin. Diğer seçim girişi türlerinin aksine, bu seçim öğeleri Google Workspace'ten dinamik olarak alındığı için SelectionItem nesnelerini atlıyorsunuz.
Aşağıdaki kodda, Google Workspace kullanıcılarının yer aldığı bir açılır menü gösterilmektedir:
JSON
{
"sections": [
{
"header": "Section Header",
"widgets": [
{
"selectionInput": {
"name": "contacts",
"type": "DROPDOWN",
"label": "Select contact from organization",
"data_source_configs": [
{
"platformDataSource": {
"commonDataSource": "USER"
},
"min_characters_trigger": 1
}
]
}
}
]
}
]
}
Öğeleri harici bir veri kaynağından doldurma
Açılır menüler, üçüncü taraf veya harici bir veri kaynağındaki öğelerle de doldurulabilir. Harici bir veri kaynağını kullanmak için veri kaynağındaki öğeleri sorgulayan ve döndüren işlevi içeren bir DataSourceConfig nesnesindeki remoteDataSource alanını belirtirsiniz.
Harici bir veri kaynağına yapılan istekleri azaltmak için kullanıcılar menüye yazmadan önce açılır menüde görünen önerilen öğeleri ekleyebilirsiniz. Önerilen öğeleri harici bir veri kaynağından doldurmak için statik SelectionItem nesneleri belirtin.
Aşağıdaki kodda, harici bir veri kaynağından öğeleri sorgulayan ve dolduran bir açılır menü gösterilmektedir:
JSON
{
"sections": [
{
"header": "Section Header",
"widgets": [
{
"selectionInput": {
"name": "crm_leads",
"type": "DROPDOWN",
"label": "Select CRM Lead",
"data_source_configs": [
{
"remoteDataSource": {
"function": "getCrmLeads"
},
"min_characters_trigger": 2
}
],
"items": [
{
"text": "Suggested Lead 1",
"value": "lead-1"
}
]
}
}
]
}
]
}
Önerilen öğelerin nasıl döndürüleceğini gösteren eksiksiz bir örnek için Seçim öğeleri önerme bölümüne bakın.
Çoklu seçim menüsü ekleme
Chat uygulamaları, seçim öğelerini özelleştirmek veya kullanıcıların dinamik bir veri kaynağındaki öğeleri seçmesine izin vermek için SelectionInput türünde bir widget olan çoklu seçim menülerini kullanabilir. Örneğin, aşağıdaki kartta kullanıcıların kişi listesinden dinamik olarak seçim yapabileceği bir çoklu seçim menüsü gösterilmektedir:
Çoklu seçim menüsündeki öğeleri aşağıdaki veri kaynaklarından doldurabilirsiniz:
- Kullanıcının üyesi olduğu kullanıcılar veya Chat alanları da dahil olmak üzere Google Workspace verileri Menüye yalnızca aynı Google Workspace kuruluşundaki öğeler eklenir.
- İlişkisel veritabanı gibi harici veri kaynakları Örneğin, bir kullanıcının müşteri ilişkileri yönetimi (CRM) sistemindeki satış potansiyel müşterileri listesinden seçim yapmasına yardımcı olmak için çoklu seçim menülerini kullanabilirsiniz.
Google Workspace veri kaynağından öğe doldurma
Google Workspace veri kaynaklarını kullanmak için SelectionInput widget'ında platformDataSource alanını belirtin. Diğer seçim girişi türlerinin aksine, bu seçim öğeleri Google Workspace'ten dinamik olarak alındığı için SelectionItem nesnelerini atlıyorsunuz.
Aşağıdaki kod, Google Workspace kullanıcılarının çoklu seçim menüsünü gösterir.
Kullanıcıları doldurmak için seçim girişi, commonDataSource değerini USER olarak ayarlar:
JSON
{
"selectionInput": {
"name": "contacts",
"type": "MULTI_SELECT",
"label": "Selected contacts",
"multiSelectMaxSelectedItems": 5,
"multiSelectMinQueryLength": 1,
"platformDataSource": {
"commonDataSource": "USER"
}
}
}
Aşağıdaki kodda, sohbet alanlarının çoklu seçim menüsü gösterilmektedir. Boşlukları doldurmak için seçim girişi hostAppDataSource alanını belirtir. Çoklu seçim menüsü, defaultToCurrentSpace öğesini true olarak da ayarlar. Bu sayede, mevcut alan menüdeki varsayılan seçim olur:
JSON
{
"selectionInput": {
"name": "spaces",
"type": "MULTI_SELECT",
"label": "Selected contacts",
"multiSelectMaxSelectedItems": 3,
"multiSelectMinQueryLength": 1,
"platformDataSource": {
"hostAppDataSource": {
"chatDataSource": {
"spaceDataSource": {
"defaultToCurrentSpace": true
}
}
}
}
}
}
Öğeleri harici bir veri kaynağından doldurma
Çoklu seçim menüleri, üçüncü taraf veya harici veri kaynaklarındaki öğelerle de doldurulabilir. Harici bir veri kaynağı kullanmak için SelectionInput widget'ında externalDataSource alanını belirtirsiniz. Bu alan, veri kaynağındaki öğeleri sorgulayan ve döndüren işlevi içerir.
Harici bir veri kaynağına yapılan istekleri azaltmak için kullanıcılar menüye yazmadan önce çoklu seçim menüsünde görünen önerilen öğeleri ekleyebilirsiniz. Örneğin, kullanıcı için yakın zamanda aranan kişileri doldurabilirsiniz. Önerilen öğeleri harici bir veri kaynağından doldurmak için statik SelectionItem nesneleri belirtin.
Aşağıdaki kod örneğinde, harici bir veri kaynağından öğeleri sorgulayan ve dolduran çoklu seçim menüsü gösterilmektedir:
Node.js
FUNCTION_URL yerine harici veri kaynağını sorgulayan HTTP uç noktasını girin.
Python
FUNCTION_URL yerine harici veri kaynağını sorgulayan HTTP uç noktasını girin.
Java
FUNCTION_URL yerine harici veri kaynağını sorgulayan HTTP uç noktasını girin.
Apps Komut Dosyası
Bu örnek, card JSON döndürerek kart mesajı gönderir. Apps Komut Dosyası kart hizmetini de kullanabilirsiniz.
Önerilen öğelerin nasıl döndürüleceğini gösteren eksiksiz bir örnek için Seçim öğeleri önerme bölümüne bakın.
Etkileşimli widget'lardan veri alma
Kullanıcılar bir düğmeyi tıkladığında etkileşimle ilgili bilgilerle birlikte Chat uygulamaları işlemi tetiklenir. Etkinlik yükünün commonEventObject bölümünde, formInputs nesnesi kullanıcının girdiği tüm değerleri içerir.
Değerleri, nesneden alabilirsiniz.
event.commonEventObject.formInputs.WIDGET_NAME, burada WIDGET_NAME, widget için belirttiğiniz name alanıdır.
Değerler, widget için belirli bir veri türü olarak döndürülür.
Aşağıda, bir kullanıcının her widget için değer girdiği bir etkinlik nesnesinin bir bölümü gösterilmektedir:
{
"commonEventObject": { "formInputs": {
"contactName": { "stringInputs": {
"value": ["Kai 0"]
}},
"contactBirthdate": { "dateInput": {
"msSinceEpoch": 1000425600000
}},
"contactType": { "stringInputs": {
"value": ["Personal"]
}}
}}
}
Chat uygulamanız, verileri almak için kullanıcıların widget'lara girdiği değerleri almak üzere etkinlik nesnesini işler. Aşağıdaki tabloda, belirli bir form girişi widget'ının değerinin nasıl alınacağı gösterilmektedir. Tabloda, her bir widget için widget'ın kabul ettiği veri türü, değerin etkinlik nesnesinde depolandığı yer ve örnek bir değer gösterilir.
| Form girişi widget'ı | Giriş verilerinin türü | Etkinlik nesnesinden giriş değeri | Örnek değer |
|---|---|---|---|
textInput |
stringInputs |
event.commonEventObject.formInputs.contactName.stringInputs.value[0] |
Kai O |
selectionInput |
stringInputs |
İlk veya tek değeri almak için event.commonEventObject.formInputs.contactType.stringInputs.value[0] |
Personal |
Yalnızca tarihleri kabul eden dateTimePicker. |
dateInput |
event.commonEventObject.formInputs.contactBirthdate.dateInput.msSinceEpoch. |
1000425600000 |
Chat uygulaması verileri aldıktan sonra aşağıdakilerden herhangi birini yapabilir:
- Çoklu seçim menüsü içeren kartlarda, kullanıcının menüye yazdıklarına göre öğeleri doldurun veya önerin.
- Kullanıcının bilgilerini inceleyebilmesi veya formun bir sonraki bölümüne geçebilmesi için verileri başka bir karta aktarın.
- Kullanıcının formu başarıyla doldurduğunu onaylamak için kullanıcıya yanıt verin.
Seçim öğeleri öner
Bir kartta öğeleri harici bir veri kaynağından dolduran çoklu seçim menüsü veya açılır menü varsa Chat uygulaması, kullanıcıların menüye yazdıklarına göre önerilen öğeleri döndürebilir. Örneğin, bir kullanıcı ABD'deki şehirleri dolduran bir menü için Atl yazmaya başladığında Chat uygulamanız, kullanıcı yazmayı bitirmeden önce Atlanta otomatik olarak önerebilir. Chat uygulaması 100 adede kadar öğe önerebilir.
Bir seçim girişindeki öğeleri önermek ve dinamik olarak doldurmak için karttaki SelectionInput widget'ı, harici veri kaynağını sorgulayan bir işlev belirtmelidir. Çoklu seçim menüleri için externalDataSource alanını belirtirsiniz. Açılır menüler için DataSourceConfig
nesnesindeki remoteDataSource
alanını belirtirsiniz.
Ayrıca, menünün öneri döndürmeden önce kullanıcının yazdığı karakter sayısını da yapılandırabilirsiniz. Çoklu seçim menüleri için multiSelectMinQueryLength alanını ayarlayın. Açılır menüler için DataSourceConfig içindeki min_characters_trigger alanını ayarlayın.
İşlev, önerilen öğeleri döndürmek için aşağıdakileri yapmalıdır:
- Kullanıcılar menüye yazdığında Chat uygulamasının aldığı etkinlik nesnesini işleyin.
- Etkinlik nesnesinden, kullanıcının yazdığı değeri alın. Bu değer,
event.commonEventObject.parameters["autocomplete_widget_query"]alanında gösterilir. - Kullanıcıya önerilecek bir veya daha fazla
SelectionItemsalmak için kullanıcı girişi değerini kullanarak veri kaynağını sorgulayın. modifyCardnesnesiyle birlikte actionRenderActionsdöndürerek önerilen öğeleri döndürün.
Aşağıdaki kod örneğinde, bir Chat uygulamasının karttaki çoklu seçim menüsünde öğeleri nasıl dinamik olarak önerdiği gösterilmektedir. Kullanıcı menüye yazdığında, widget'ın externalDataSource alanında sağlanan işlev veya uç nokta, harici bir veri kaynağını sorgular ve kullanıcının seçebileceği öğeler önerir.
Node.js
FUNCTION_URL yerine harici veri kaynağını sorgulayan HTTP uç noktasını girin.
Python
FUNCTION_URL yerine harici veri kaynağını sorgulayan HTTP uç noktasını girin.
Java
FUNCTION_URL yerine harici veri kaynağını sorgulayan HTTP uç noktasını girin.
Apps Komut Dosyası
Bu örnek, card JSON döndürerek kart mesajı gönderir. Apps Komut Dosyası kart hizmetini de kullanabilirsiniz.
Verileri başka bir karta aktarma
Bir kullanıcı karttan bilgi gönderdikten sonra, aşağıdakilerden herhangi birini yapmak için ek kartlar döndürmeniz gerekebilir:
- Farklı bölümler oluşturarak kullanıcıların daha uzun formları doldurmasına yardımcı olun.
- Kullanıcıların, ilk karttaki bilgileri önizleyip onaylamasına izin verin. Böylece, yanıtlarını göndermeden önce inceleyebilirler.
- Formun kalan kısımlarını dinamik olarak doldurur. Örneğin, kullanıcıları randevu oluşturmaya yönlendirmek için bir sohbet uygulaması, randevu nedenini isteyen bir ilk kart gösterebilir ve ardından randevu türüne göre uygun zamanları sağlayan başka bir kartı doldurabilir.
İlk karttan girilen verileri aktarmak için aşağıdaki örnekte gösterildiği gibi, button
widget'ını
actionParameters
ile oluşturabilirsiniz. Bu widget'lar, widget'ın name ve kullanıcının girdiği değeri içerir:
Node.js
FUNCTION_URL kısmını, düğme tıklamalarını işleyen HTTP uç noktasıyla değiştirin.
Python
FUNCTION_URL kısmını, düğme tıklamalarını işleyen HTTP uç noktasıyla değiştirin.
Java
FUNCTION_URL kısmını, düğme tıklamalarını işleyen HTTP uç noktasıyla değiştirin.
Apps Komut Dosyası
Bu örnek, card JSON döndürerek kart mesajı gönderir. Apps Komut Dosyası kart hizmetini de kullanabilirsiniz.
Kullanıcı düğmeyi tıkladığında Chat uygulamanız, veri alabileceğiniz bir etkinlik nesnesi alır.
Form gönderimine yanıt verme
Chat uygulaması, kart mesajından veya iletişim kutusundan verileri aldıktan sonra ya alındığını onaylayarak ya da hata döndürerek yanıt verir.
Aşağıdaki örnekte, bir sohbet uygulaması, kart mesajından gönderilen bir formu başarıyla aldığını onaylamak için kısa mesaj gönderiyor.
Node.js
Python
Java
Apps Komut Dosyası
Bu örnek, card JSON döndürerek kart mesajı gönderir. Apps Komut Dosyası kart hizmetini de kullanabilirsiniz.
Bir iletişim kutusunu işleyip kapatmak için onay mesajı göndermek, orijinal mesajı veya kartı güncellemek ya da yalnızca iletişim kutusunu kapatmak isteyip istemediğinizi belirten bir RenderActions nesnesi döndürürsünüz. Adımlar için İletişim kutusunu kapatma başlıklı makaleyi inceleyin.
Sorun giderme
Bu bölümde, Chat'teki iletişim kutularıyla etkileşimde bulunurken karşılaşılan belirli hata kodları ve çalışma zamanı davranışlarıyla ilgili sorun giderme adımları sağlanmaktadır.
İletişim kutusu etkileşimleri "Eklenti çağrılırken, belirtilmemiş hata oluştu" hatasını döndürüyor
Bir iletişim kutusuyla etkileşimde bulunurken "Eklenti çağrılırken belirtilmemiş hata." mesajını ve 13 kodunu içeren hata günlükleri görürseniz bu durum genellikle dahili bir hatayı veya Chat uygulamasının HTTP uç noktasının isteği işlemeyi ya da geçerli bir yanıt döndürmeyi başaramadığını gösterir.
Bu hatayı gidermek için:
- HTTP uç noktanızın günlüklerinde işlenmemiş istisnalar veya kilitlenmeler olup olmadığını kontrol edin.
- Uç noktanızın isteklere 30 saniye içinde yanıt verdiğini doğrulayın. Uç nokta 30 saniyeden uzun sürerse Chat yanıtı işleyemez ve etkileşim başarısız olur. Ayrıntılı bilgi için Hız sınırları ve en iyi uygulamalar başlıklı makaleyi inceleyin.
- Uç noktanızın geçerli bir yanıt döndürdüğünden emin olun. Diyalog gönderimleri için,
uç nokta, doğru JSON biçiminde bir
RenderActionsnesnesi döndürmelidir. Yanıt yanlış biçimlendirilmişse veya gerekli alanları içermiyorsa iletişim kutusu etkileşimi başarısız olabilir.
Bir Google Chat uygulaması veya kartı hata döndürdüğünde Chat arayüzünde "Bir hata oluştu" veya "İsteğiniz işlenemiyor" mesajı gösterilir. Bazen Chat kullanıcı arayüzünde hata mesajı gösterilmez ancak Chat uygulaması veya kartı beklenmedik bir sonuç üretir. Örneğin, kart mesajı görünmeyebilir.
Chat kullanıcı arayüzünde hata mesajı gösterilmese de Chat uygulamaları için hata günlüğü kaydı 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üzeltmeyle ilgili yardım için Google Chat hatalarını giderme ve düzeltme başlıklı makaleyi inceleyin.
İlgili konular
- Kullanıcılardan kart mesajları ve iletişim kutularındaki iletişim formunu doldurmalarını isteyen bir Chat uygulaması olan Kişi Yöneticisi örneğini görüntüleyin.
- Etkileşimli iletişim kutularını açma
Eklenti olmayan Chat uygulamaları: Kullanıcıların kartlara girdiği form verilerini okuma
Aşağıdaki belgeler, Google Workspace eklentisi olmayan Chat uygulamaları için geçerlidir. Eklenti olmayan bir Chat uygulamasını taşımak için Google Chat uygulamasını Google Workspace eklentisine dönüştürme başlıklı makaleyi inceleyin.
Kartları kullanarak form oluşturma
Metin girişi, tarih/saat seçici ve seçim girişi içeren bir iletişim formu kullanan, eklenti olmayan bir Chat uygulaması örneği için aşağıdaki koda bakın:
Node.js
Python
Java
Apps Komut Dosyası
Etkileşimli widget'lardan veri alma
Kullanıcılar bir düğmeyi her tıkladığında, eklenti olmayan Chat uygulamaları, düğmenin konumuna bağlı bir etkileşim etkinliği alır:
Düğme bir mesajda veya iletişim kutusundaysa eklenti olmayan Chat uygulamaları, etkileşimle ilgili bilgileri içeren bir
CARD_CLICKEDetkileşim etkinliği alır. Etkileşim etkinliklerininCARD_CLICKEDyükünde, kullanıcının girdiği tüm değerlere sahip bircommon.formInputsnesnesi (event.common.formInputs) bulunur.Değerleri, nesneden alabilirsiniz.
common.formInputs.WIDGET_NAME, burada WIDGET_NAME, widget için belirttiğiniznamealanıdır. Değerler, widget için belirli bir veri türü olarak döndürülür (Inputsnesnesi olarak gösterilir).Aşağıda, bir kullanıcının her widget için değer girdiği bir
CARD_CLICKEDetkileşim etkinliğinin bir bölümü gösterilmektedir:HTTP
{ "type": "CARD_CLICKED", "common": { "formInputs": { "contactName": { "stringInputs": { "value": ["Kai 0"] }}, "contactBirthdate": { "dateInput": { "msSinceEpoch": 1000425600000 }}, "contactType": { "stringInputs": { "value": ["Personal"] }} }} }Apps Komut Dosyası
{ "type": "CARD_CLICKED", "common": { "formInputs": { "contactName": { "": { "stringInputs": { "value": ["Kai 0"] }}}, "contactBirthdate": { "": { "dateInput": { "msSinceEpoch": 1000425600000 }}}, "contactType": { "": { "stringInputs": { "value": ["Personal"] }}} }} }Düğme bir ana sayfadaysa, Eklenti olmayan Chat uygulamaları
SUBMIT_FORMetkileşim etkinliği alır. Etkileşim etkinliğinin yükü, kullanıcının girdiği değerleri içeren bircommonEventObject.formInputsnesnesi (event.commonEventObject.formInputs) içerir.Değerleri, nesneden alabilirsiniz.
commonEventObject.formInputs.WIDGET_NAME, burada WIDGET_NAME, widget için belirttiğiniznamealanıdır. Değerler, widget için belirli bir veri türü olarak döndürülür (Inputsnesnesi olarak gösterilir).Aşağıda, bir kullanıcının her widget için değer girdiği bir
SUBMIT_FORMetkileşim etkinliğinin bir bölümü gösterilmektedir:HTTP
{ "type": "SUBMIT_FORM", "commonEventObject": { "formInputs": { "contactName": { "stringInputs": { "value": ["Kai 0"] }}, "contactBirthdate": { "dateInput": { "msSinceEpoch": 1000425600000 }}, "contactType": { "stringInputs": { "value": ["Personal"] }} }} }Apps Komut Dosyası
{ "type": "SUBMIT_FORM", "commonEventObject": { "formInputs": { "contactName": { "": { "stringInputs": { "value": ["Kai 0"] }}}, "contactBirthdate": { "": { "dateInput": { "msSinceEpoch": 1000425600000 }}}, "contactType": { "": { "stringInputs": { "value": ["Personal"] }}} }} }
Verileri almak için, eklenti olmayan bir Chat uygulaması, kullanıcıların widget'lara girdiği değerleri almak üzere etkileşim etkinliğini işler. Aşağıdaki tabloda, belirli bir form girişi widget'ının değerinin nasıl alınacağı gösterilmektedir. Tabloda, her widget için widget'ın kabul ettiği veri türü, değerin etkileşim etkinliğinde depolandığı yer ve örnek bir değer gösterilir.
| Form girişi widget'ı | Giriş verilerinin türü | Etkileşim etkinliğinden alınan giriş değeri | Örnek değer |
|---|---|---|---|
textInput |
stringInputs |
event.common.formInputs.contactName.stringInputs.value[0] |
Kai O |
selectionInput |
stringInputs |
İlk veya tek değeri almak için event.common.formInputs.contactType.stringInputs.value[0] |
Personal |
Yalnızca tarihleri kabul eden dateTimePicker. |
dateInput |
event.common.formInputs.contactBirthdate.dateInput.msSinceEpoch. |
1000425600000 |
Verileri başka bir karta aktarma
Eklenti olmayan bir sohbet uygulamasında ilk karttan girilen verileri aktarmak için aşağıdaki örnekte gösterildiği gibi, widget'ın name ve kullanıcının girdiği değeri içeren actionParameters ile button widget'ını oluşturun:
Node.js
Python
Java
Apps Komut Dosyası
Kullanıcı düğmeyi tıkladığında, eklenti olmayan Chat uygulaması bir CARD_CLICKED etkileşim etkinliği alır. Bu etkinlikten veri alabilirsiniz.
Form gönderimine yanıt verme
Aşağıdaki örnekte, eklenti olmayan bir Chat uygulaması, iletişim kutusu veya kart mesajından gönderilen bir formu başarıyla aldığını onaylamak için kısa mesaj gönderiyor:
Node.js
Python
Java
Apps Komut Dosyası
Eklenti olmayan bir Chat uygulamasında iletişim kutusunu işleyip kapatmak için onay mesajı göndermek, orijinal mesajı veya kartı güncellemek ya da yalnızca iletişim kutusunu kapatmak isteyip istemediğinizi belirten bir ActionResponse nesnesi döndürün. Adımlar için İletişim kutusunu kapatma başlıklı makaleyi inceleyin.