बातचीत तय करते समय सीन, कंट्रोल फ़्लो की बुनियादी इकाई होता है. इन्हें अन्य सीन के साथ जोड़ा जा सकता है, असली उपयोगकर्ता के लिए प्रॉम्प्ट जनरेट किए जा सकते हैं, और स्लॉट तय किए जा सकते हैं. सीन का नाम, फ़ाइल के नाम में बताया गया है.
YAML प्रतिनिधि | |
---|---|
onEnter: object ( |
फ़ील्ड | |
---|---|
onEnter |
इस सीन में ट्रांज़िशन के दौरान, शुरू करने के लिए हैंडलर. |
intentEvents[] |
इंटेंट के आधार पर ट्रिगर होने वाले इवेंट की सूची. on_load हैंडलर को कॉल करने के बाद, ये इवेंट किसी भी समय ट्रिगर हो सकते हैं. अहम जानकारी - ये इवेंट, इस सीन के दायरे में आने वाले इंटेंट के सेट को तय करते हैं. साथ ही, दुनिया भर में तय किए गए ऐसे इवेंट के मुकाबले इन्हें प्राथमिकता दी जाएगी जिनमें एक जैसे इंटेंट या ट्रिगर करने वाले वाक्यांश हों. किसी सीन में इंटेंट के नाम यूनीक होने चाहिए. |
conditionalEvents[] |
कंडिशनल स्टेटमेंट के आधार पर ट्रिगर होने वाले इवेंट की सूची. इनकी जांच, फ़ॉर्म भरने के बाद या on_load के तुरंत बाद की जाती है. ऐसा तब किया जाता है, जब इस सीन में फ़ॉर्म नहीं होता है. आकलन सिर्फ़ एक बार किया जाता है. सिर्फ़ मिलता-जुलता पहला इवेंट ट्रिगर होगा. |
slots[] |
स्लॉट की क्रम वाली सूची. हर स्लॉट से पता चलता है कि किस तरह का डेटा उपलब्ध होगा. साथ ही, स्लॉट को इस रिज़ॉल्यूशन (जैसे कि प्रॉम्प्ट) के अनुभव को पसंद के मुताबिक बनाने के लिए कॉन्फ़िगर किया जाएगा. |
onSlotUpdated |
जब किसी स्लॉट की स्थिति में कोई ऐसा बदलाव होता है जो किसी दूसरे हैंडलर में अपडेट होने की वजह से नहीं होता, तब हैंडलर को कॉल किया जाता है. इससे स्लॉट अमान्य हो सकते हैं, सीन अमान्य हो सकता है या सीन की स्थिति में दूसरे बदलाव किए जा सकते हैं. |
स्लॉट
किसी स्लॉट के लिए कॉन्फ़िगरेशन. स्लॉट डेटा की एकल इकाइयां होती हैं जिन्हें प्राकृतिक भाषा (यानी इंटेंट पैरामीटर), सेशन पैरामीटर, और अन्य स्रोतों से भरा जा सकता है.
YAML प्रतिनिधि | |
---|---|
name: string type: object ( |
फ़ील्ड | |
---|---|
name |
ज़रूरी है. स्लॉट का नाम. |
type |
ज़रूरी है. इस स्लॉट के डेटा टाइप की जानकारी देता है. |
required |
ज़रूरी नहीं. इससे पता चलता है कि आगे बढ़ने से पहले स्लॉट को भरना ज़रूरी है या नहीं. अगर किसी ज़रूरी स्लॉट में जानकारी नहीं भरी गई है, तो उपयोगकर्ता को उसे पसंद के मुताबिक बनाने का अनुरोध दिखेगा. |
promptSettings |
ज़रूरी नहीं. स्लॉट भरने के अलग-अलग चरणों के लिए प्रॉम्प्ट रजिस्टर करता है. |
commitBehavior |
ज़रूरी नहीं. स्लॉट से जुड़ा व्यवहार अपनाएं. |
config |
ज़रूरी नहीं. स्लॉट को भरने के लिए इस्तेमाल होने वाले स्लॉट से जुड़ा अतिरिक्त कॉन्फ़िगरेशन. कॉन्फ़िगरेशन का फ़ॉर्मैट, स्लॉट के हिसाब से तय होता है. इस कॉन्फ़िगरेशन में, उपयोगकर्ता या सेशन पैरामीटर के रिसॉर्स रेफ़रंस जोड़े जा सकते हैं. यह कॉन्फ़िगरेशन, लेन-देन और उपयोगकर्ता के जुड़ाव से जुड़े स्लॉट भरने के लिए ज़रूरी है. उदाहरण: actions.type.completePurchaseValue टाइप के स्लॉट के लिए, नीचे दिया गया कॉन्फ़िगरेशन, क्लाइंट की ओर से तय किए गए सेशन पैरामीटर { "@type": "type.googleapis.com/ google.actions.transactions.v3.CompletePurchaseValueSpec", "skuId": { "skuType": "SKU_TYPE_IN_APP", "id": "$session.params.userSelectedSkuId", "packageName": "com.example.company" } } |
defaultValue |
ज़रूरी नहीं. इस स्लॉट के लिए डिफ़ॉल्ट वैल्यू भरने के लिए कॉन्फ़िगरेशन. |
PromptSettings
एक ही जगह जहां स्लॉट प्रॉम्प्ट तय किए जाते हैं.
YAML प्रतिनिधि | |
---|---|
initialPrompt: object ( |
फ़ील्ड | |
---|---|
initialPrompt |
स्लॉट की वैल्यू के लिए प्रॉम्प्ट. उदाहरण: "आपको कितना बड़ा चाहिए?" |
noMatchPrompt1 |
जब उपयोगकर्ता का इनपुट पहली बार किसी स्लॉट के लिए वैल्यू के अनुमानित टाइप से मैच नहीं करता है, तब यह प्रॉम्प्ट. उदाहरण: "माफ़ करें, मुझे समझ नहीं आया." |
noMatchPrompt2 |
जब उपयोगकर्ता का इनपुट दूसरी बार स्लॉट के लिए अनुमानित वैल्यू टाइप से मैच नहीं होता है, तो यह सूचना देने के लिए. उदाहरण: "माफ़ करें, मुझे समझ नहीं आया." |
noMatchFinalPrompt |
जब उपयोगकर्ता का इनपुट आखिरी बार के लिए दी गई वैल्यू के अनुमानित टाइप से मैच नहीं होता है, तब यह प्रॉम्प्ट. उदाहरण: "माफ़ करें, मुझे समझ नहीं आया." |
noInputPrompt1 |
उपयोगकर्ता के पहली बार इनपुट न देने पर, दिखने का प्रॉम्प्ट. उदाहरण: "माफ़ करें, मुझे समझ नहीं आया." |
noInputPrompt2 |
उपयोगकर्ता की ओर से दूसरी बार इनपुट न देने पर, यह सूचना देने के लिए कहा जाता है. उदाहरण: "माफ़ करें, मुझे समझ नहीं आया." |
noInputFinalPrompt |
उपयोगकर्ता की ओर से पिछली बार इनपुट न दिए जाने पर सूचना देने के लिए. उदाहरण: "माफ़ करें, मुझे समझ नहीं आया." |
CommitBehavior
स्लॉट भर जाने के बाद, उससे जुड़े तय व्यवहार की जानकारी देने वाला मैसेज.
YAML प्रतिनिधि | |
---|---|
writeSessionParam: string |
फ़ील्ड | |
---|---|
writeSessionParam |
स्लॉट वैल्यू भरने के बाद उसे लिखने के लिए, सेशन पैरामीटर. ध्यान दें कि नेस्ट किए गए पाथ अभी काम नहीं करते. "$$" का इस्तेमाल करके, सेशन पैरामीटर में स्लॉट की वैल्यू को स्लॉट के नाम से लिखा जाता है. उदाहरण के लिए: WriteSessionParam = "fruit" "$session.params.fruit" का होता है. |
DefaultValue
इस स्लॉट के लिए डिफ़ॉल्ट वैल्यू भरने के लिए कॉन्फ़िगरेशन.
YAML प्रतिनिधि | |
---|---|
sessionParam: string constant: value |
फ़ील्ड | |
---|---|
sessionParam |
ज़रूरी नहीं. अगर किसी सेशन की वैल्यू खाली नहीं है, तो स्लॉट वैल्यू शुरू करने के लिए इस्तेमाल किया जाने वाला सेशन पैरामीटर. वैल्यू का टाइप, स्लॉट के टाइप से मेल खाना चाहिए. ध्यान दें कि नेस्ट किए गए पाथ अभी काम नहीं करते. उदाहरण: |
constant |
ज़रूरी नहीं. स्लॉट के लिए कॉन्सटैंट डिफ़ॉल्ट वैल्यू. इसका इस्तेमाल सिर्फ़ तब किया जाएगा, जब इस स्लॉट का कोई मान |