किसी बातचीत को डिज़ाइन करते समय, सीन कंट्रोल करने की बुनियादी इकाई होती है. उन्हें अन्य सीन के साथ जोड़ा जा सकता है, असली उपयोगकर्ता के लिए प्रॉम्प्ट जनरेट किए जा सकते हैं, और स्लॉट तय किए जा सकते हैं. सीन का नाम, फ़ाइल के नाम में बताया गया है.
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" से मेल खाता हो. राइट सेशनParam = "टिकट" "$session.params.ticket" से मेल खाता हो. |
DefaultValue
इस स्लॉट के लिए डिफ़ॉल्ट मान पॉप्युलेट करने के लिए कॉन्फ़िगरेशन.
YAML प्रतिनिधि | |
---|---|
sessionParam: string constant: value |
फ़ील्ड | |
---|---|
sessionParam |
ज़रूरी नहीं. स्लॉट वैल्यू शुरू करने के लिए इस्तेमाल किया जाने वाला सेशन पैरामीटर. हालांकि, इसके लिए ज़रूरी है कि उसमें कोई वैल्यू न हो. वैल्यू का टाइप, स्लॉट के टाइप से मेल खाना चाहिए. ध्यान दें कि फ़िलहाल नेस्ट किए गए पाथ का इस्तेमाल नहीं किया जा सकता. उदाहरण: |
constant |
ज़रूरी नहीं. स्लॉट के लिए कॉन्स्टेंट डिफ़ॉल्ट वैल्यू. इसका इस्तेमाल सिर्फ़ तब किया जाएगा, जब इस स्लॉट के लिए कोई मान |