Actions SDK टूल का इस्तेमाल करके, Google Assistant के लिए कार्रवाइयाँ तैयार करना (लेवल 1)

1. खास जानकारी

Google Assistant डेवलपर प्लैटफ़ॉर्म की मदद से, ऐसा सॉफ़्टवेयर बनाया जा सकता है जिससे Google Assistant की सुविधाओं को बढ़ाया जा सके. Google Assistant एक वर्चुअल निजी असिस्टेंट है. इसकी सुविधा, स्मार्ट स्पीकर, फ़ोन, कार, टीवी, हेडफ़ोन वगैरह जैसे 100 करोड़ से ज़्यादा डिवाइसों पर उपलब्ध है. लोग, Assistant से बातचीत करके कई काम करते हैं. जैसे, किराने का सामान खरीदना या टैक्सी बुक करना. डेवलपर के तौर पर, Assistant डेवलपर प्लैटफ़ॉर्म का इस्तेमाल करके, उपयोगकर्ताओं और तीसरे पक्ष की फ़ुलफ़िलमेंट सेवा के बीच बातचीत को आसानी से बनाया और मैनेज किया जा सकता है. इससे उपयोगकर्ताओं को बेहतर और असरदार अनुभव मिलता है.

इस कोडलैब में, Google Assistant के लिए Actions SDK का इस्तेमाल करके डेवलपमेंट से जुड़े शुरुआती लेवल के कॉन्सेप्ट शामिल हैं. इसे पूरा करने के लिए, आपको इस प्लैटफ़ॉर्म का पहले से कोई अनुभव होने की ज़रूरत नहीं है. इस कोडलैब में, Google Assistant के लिए एक आसान ऐक्शन बनाया गया है. यह ऐक्शन, उपयोगकर्ताओं को Gryffinberg की काल्पनिक दुनिया में उनके रोमांचक सफ़र की शुरुआत में उनकी किस्मत के बारे में बताता है. Actions SDK के लेवल 2 वाले कोडलैब में, इस ऐक्शन को और बेहतर बनाया गया है. इससे उपयोगकर्ता के इनपुट के आधार पर, उसकी किस्मत के बारे में बताया जा सकता है.

आपको क्या बनाना है

इस कोडलैब में, आपको एक आसान ऐक्शन बनाने का तरीका बताया जाएगा. इसमें ये फ़ंक्शन शामिल होंगे:

  • उपयोगकर्ताओं को शुभकामनाओं वाला मैसेज भेजता है
  • लोगों से सवाल पूछता है और उनके चुने गए विकल्प के हिसाब से जवाब देता है
  • यह उपयोगकर्ताओं को सुझाव वाले चिप दिखाता है. इन पर क्लिक करके, वे इनपुट दे सकते हैं
  • यह कुकी, उपयोगकर्ता के लिए बधाई संदेश में बदलाव करती है. यह बदलाव इस आधार पर किया जाता है कि उपयोगकर्ता, लौटने वाला उपयोगकर्ता है या नहीं

इस कोड सीखने की प्रक्रिया को पूरा करने के बाद, आपकी बनाई गई कार्रवाई में बातचीत का यह फ़्लो होगा. माइक्रोफ़ोन के बगल में मौजूद टेक्स्ट, उपयोगकर्ता के इनपुट को दिखाता है. वहीं, स्पीकर के बगल में मौजूद टेक्स्ट, कार्रवाई के जवाब को दिखाता है:

1c1e79902bed7230.png

18ef55647b4cb52c.png

आपको क्या सीखने को मिलेगा

  • Actions Console में प्रोजेक्ट बनाने का तरीका
  • Actions console और अपने लोकल फ़ाइल सिस्टम के बीच, अपने ऐक्शन प्रोजेक्ट को पुश और पुल करने के लिए, gactions टूल का इस्तेमाल कैसे करें
  • उपयोगकर्ता के ऐक्शन शुरू करने के बाद, उसे प्रॉम्प्ट कैसे भेजा जाए
  • उपयोगकर्ता के इनपुट को प्रोसेस करने और जवाब देने का तरीका
  • कार्रवाई सिम्युलेटर में अपनी कार्रवाई को टेस्ट करने का तरीका
  • Cloud Functions एडिटर का इस्तेमाल करके, अनुरोध पूरा करने की सुविधा को लागू करने का तरीका

आपको किन चीज़ों की ज़रूरत होगी

आपके एनवायरमेंट में ये टूल होने चाहिए:

  • अपनी पसंद का आईडीई या टेक्स्ट एडिटर
  • Node.js और npm के लिए, शेल कमांड चलाने वाला टर्मिनल
  • कोई वेब ब्राउज़र, जैसे कि Google Chrome

2. सेट अप करें

यहां दिए गए सेक्शन में, डेवलपमेंट एनवायरमेंट सेट अप करने और Actions प्रोजेक्ट बनाने का तरीका बताया गया है.

Google खाते से जुड़ी अनुमतियों की सेटिंग देखना

इस कोडलैब में बनाई गई कार्रवाई को आज़माने के लिए, आपको ज़रूरी अनुमतियां चालू करनी होंगी, ताकि सिम्युलेटर आपकी कार्रवाई को ऐक्सेस कर सके.

अनुमतियां चालू करने के लिए, यह तरीका अपनाएं:

  1. गतिविधि कंट्रोल पर जाएं.
  2. अगर आपने पहले से साइन इन नहीं किया है, तो अपने Google खाते से साइन इन करें.
  3. ये अनुमतियां चालू करें:
  • वेब और ऐप्लिकेशन गतिविधि
  • वेब और ऐप्लिकेशन गतिविधि में जाकर, Google की सेवाएं इस्तेमाल करने वाले डिवाइस, ऐप्लिकेशन और साइटों से Chrome इतिहास और गतिविधि शामिल करें चेकबॉक्स** को चुनें.**

ऐक्शन प्रोजेक्ट बनाना

आपका Actions प्रोजेक्ट, आपकी कार्रवाई के लिए एक कंटेनर होता है.

इस कोडलैब के लिए Actions प्रोजेक्ट बनाने के लिए, यह तरीका अपनाएं:

  1. Actions console खोलें.
  2. नया प्रोजेक्ट पर क्लिक करें.
  3. कोई प्रोजेक्ट का नाम डालें. जैसे, actions-codelab. (यह नाम सिर्फ़ आपके इंटरनल रेफ़रंस के लिए है. बाद में, अपने प्रोजेक्ट के लिए कोई बाहरी नाम सेट किया जा सकता है.)

8cd05a84c1c0a32f.png

  1. प्रोजेक्ट बनाएं पर क्लिक करें.
  2. आपको किस तरह का ऐक्शन बनाना है? स्क्रीन पर, कस्टम कार्ड चुनें.
  3. आगे बढ़ें पर क्लिक करें.
  4. आपको इसे कैसे बनाना है? स्क्रीन पर, ब्लैंक प्रोजेक्ट कार्ड चुनें.
  5. बनाना शुरू करें पर क्लिक करें.

अपनी कार्रवाई के लिए प्रोजेक्ट आईडी सेव करना

प्रोजेक्ट आईडी, आपके ऐक्शन का यूनीक आइडेंटिफ़ायर होता है. इस कोडलैब में कई चरणों के लिए, आपको अपने प्रोजेक्ट आईडी की ज़रूरत होगी.

अपना प्रोजेक्ट आईडी वापस पाने के लिए, यह तरीका अपनाएं:

  1. Actions console में, तीन वर्टिकल बिंदुओं (यहां आइकॉन डालें) पर क्लिक करें.
  2. प्रोजेक्ट सेटिंग पर क्लिक करें.

6f59050b85943073.png

  1. प्रोजेक्ट आईडी** कॉपी करें.**

कोई बिलिंग खाता लिंक करना

अगर आपके पास पहले से कोई बिलिंग खाता नहीं है, तो आपको एक बिलिंग खाता बनाना होगा. साथ ही, उसे Google Cloud में अपने प्रोजेक्ट से जोड़ना होगा, ताकि बाद में Cloud Functions की मदद से फ़ुलफ़िलमेंट को डिप्लॉय किया जा सके.

अपने प्रोजेक्ट से कोई बिलिंग खाता जोड़ने के लिए, यह तरीका अपनाएं:

  1. Google Cloud Platform के बिलिंग पेज पर जाएं.
  2. बिलिंग खाता जोड़ें या खाता बनाएं पर क्लिक करें.
  3. पेमेंट के तरीके की जानकारी डालें.
  4. मुफ़्त में आज़माना शुरू करें या बिलिंग की जानकारी सबमिट करें और बिलिंग की सुविधा चालू करें पर क्लिक करें.
  5. Google Cloud Platform के बिलिंग पेज पर जाएं.
  6. मेरे प्रोजेक्ट टैब पर क्लिक करें.
  7. कोड लैब के लिए, कार्रवाइयां में जाकर, कार्रवाइयां प्रोजेक्ट के बगल में मौजूद तीन बिंदुओं पर क्लिक करें.
  8. बिलिंग बदलें पर क्लिक करें.
  9. ड्रॉप-डाउन मेन्यू में, कॉन्फ़िगर किया गया बिलिंग खाता चुनें.
  10. खाता सेट करें पर क्लिक करें.

शुल्क से बचने के लिए, इस कोडलैब के आखिर में दिए गए, अपने प्रोजेक्ट को मिटाएं सेक्शन में दिया गया तरीका अपनाएं.

gactions कमांड-लाइन इंटरफ़ेस इंस्टॉल करना

इस कोडलैब में, gactions कमांड-लाइन इंटरफ़ेस (सीएलआई) टूल का इस्तेमाल करके, Actions console और अपने लोकल फ़ाइल सिस्टम के बीच Actions प्रोजेक्ट को सिंक किया जाता है.

gactions CLI को इंस्टॉल करने के लिए, gactions कमांड-लाइन टूल इंस्टॉल करना में दिए गए निर्देशों का पालन करें.

अपना Actions प्रोजेक्ट डाउनलोड करना

Actions console से अपना Actions प्रोजेक्ट डाउनलोड करके, अपनी कार्रवाई डेवलप करना शुरू करें.

Actions प्रोजेक्ट डाउनलोड करने के लिए, यह तरीका अपनाएं:

  1. नई डायरेक्ट्री बनाने और उसमें बदलने के लिए, ये कमांड चलाएं:
mkdir myproject
cd myproject
  1. अपने Actions प्रोजेक्ट के कॉन्फ़िगरेशन को अपने लोकल फ़ाइल सिस्टम में कॉपी करने के लिए, यह कमांड चलाएं:
gactions pull --project-id <projectID>

फ़ाइल के स्ट्रक्चर को समझना

Actions console से डाउनलोड किया गया Actions प्रोजेक्ट, YAML फ़ाइल स्ट्रक्चर में दिखता है. नीचे दी गई इमेज में, फ़ाइल स्ट्रक्चर को बेहतर तरीके से दिखाया गया है:

2aefeeab7c8eb32f.png

फ़ाइल स्ट्रक्चर में ये चीज़ें शामिल होती हैं:

  • actions/: यह आपके Actions प्रोजेक्ट को दिखाता है. जब आपकी कार्रवाई शुरू की जाती है, तब सिस्टम actions.yaml को कॉल करता है. इसके बाद, यह custom/global/actions.intent.MAIN.yaml फ़ाइल को कॉल करता है.
  • custom/: वह डायरेक्ट्री जिसमें आपको अपने ऐक्शन में बदलाव करना है.
  • global/: इस डायरेक्ट्री में सिस्टम इंटेंट होते हैं. प्लैटफ़ॉर्म इन्हें आपके प्रोजेक्ट में अपने-आप जोड़ देता है. आपको इस कोडलैब में, सिस्टम इंटेंट के बारे में ज़्यादा जानकारी मिलेगी.
  • manifest.yaml: ऐसी फ़ाइल जिसमें ऐसी जानकारी होती है जिसे एक जगह से दूसरी जगह ले जाया जा सकता है. साथ ही, यह किसी प्रोजेक्ट के लिए खास नहीं होती और इसे एक प्रोजेक्ट से दूसरे प्रोजेक्ट में ले जाया जा सकता है.
  • settings/: यह Actions प्रोजेक्ट की सेटिंग के बारे में बताता है. जैसे, डिसप्ले नेम, डिफ़ॉल्ट स्थान-भाषा, और कैटगरी.

3. बातचीत शुरू करना

उपयोगकर्ता, इनवोकेशन के ज़रिए आपकी कार्रवाई से बातचीत शुरू करते हैं. उदाहरण के लिए, अगर आपकी किसी कार्रवाई का नाम MovieTime है, तो उपयोगकर्ता आपकी कार्रवाई को "Ok Google, MovieTime से बात करो" जैसे वाक्यांश बोलकर शुरू कर सकते हैं. यहां MovieTime, डिसप्ले नेम है. अगर आपको अपने ऐक्शन को प्रोडक्शन में डिप्लॉय करना है, तो उसका डिसप्ले नेम होना ज़रूरी है. हालांकि, अपने ऐक्शन को टेस्ट करने के लिए, आपको डिसप्ले नेम तय करने की ज़रूरत नहीं है. इसके बजाय, सिम्युलेटर में "मेरे टेस्ट ऐप्लिकेशन से बात करो" वाक्यांश का इस्तेमाल करके, अपनी कार्रवाई शुरू की जा सकती है. इस सेक्शन में, आपको सिम्युलेटर के बारे में ज़्यादा जानकारी मिलेगी.

आपको मुख्य इनवोकेशन में बदलाव करना होगा, ताकि यह तय किया जा सके कि उपयोगकर्ता के आपके ऐक्शन को इनवोक करने के बाद क्या होगा.

डिफ़ॉल्ट रूप से, आपका ऐक्शन ट्रिगर होने पर, एक सामान्य प्रॉम्प्ट दिखता है. "मुख्य इनवोकेशन तय करके, अपना ऐक्शन बनाना शुरू करें."

अगले सेक्शन में, custom/global/actions.intent.MAIN.yaml फ़ाइल में मुख्य इनवोकेशन के लिए प्रॉम्प्ट को अपनी पसंद के मुताबिक बनाएं.

मुख्य इनवोकेशन सेट अप करना

actions.intent.MAIN.yaml फ़ाइल में जाकर, मुख्य इनवोकेशन प्रॉम्प्ट में बदलाव किया जा सकता है.

जब कोई उपयोगकर्ता आपकी कार्रवाई शुरू करता है, तब आपकी कार्रवाई उसे वापस भेजे जाने वाले प्रॉम्प्ट में बदलाव करने के लिए, यह तरीका अपनाएं:

  1. अपने टेक्स्ट एडिटर में custom/global/actions.intent.MAIN.yaml खोलें.
  2. speech फ़ील्ड (Start building your action...) में मौजूद टेक्स्ट को इस वेलकम मैसेज से बदलें: A wondrous greeting, adventurer! Welcome to the mythical land of Gryffinberg! Based on your clothes, you are not from around these lands. It looks like you're on your way to an epic journey.

actions.intent.MAIN.yaml

handler:
  staticPrompt:
    candidates:
    - promptResponse:
        firstSimple:
          variants:
          - speech: A wondrous greeting, adventurer! Welcome to the mythical land of 
                Gryffinberg! Based on your clothes, you are not from around these lands. 
                It looks like you're on your way to an epic journey.
transitionToScene: actions.scene.END_CONVERSATION
  1. फ़ाइल सेव करें.

सिम्युलेटर में मुख्य इनवोकेशन की जांच करना

Actions console, आपके ऐक्शन को टेस्ट करने के लिए एक वेब टूल उपलब्ध कराता है. इसे सिम्युलेटर कहा जाता है. इंटरफ़ेस, हार्डवेयर डिवाइसों और उनकी सेटिंग की तरह काम करता है. इसलिए, अपने ऐक्शन से इस तरह बातचीत की जा सकती है जैसे वह किसी स्मार्ट डिसप्ले, फ़ोन, स्पीकर या KaiOS पर चल रहा हो.

अब अपनी कार्रवाई शुरू करने पर, उसे आपके जोड़े गए कस्टम प्रॉम्प्ट ("एडवेंचरर को शानदार बधाई!...") के साथ जवाब देना चाहिए.

gactions deploy preview कमांड का इस्तेमाल करके, Actions प्रोजेक्ट के वर्शन को अपडेट किए बिना, कंसोल में अपनी कार्रवाई को टेस्ट किया जा सकता है. इस कमांड को चलाने पर, आपके लोकल फ़ाइल सिस्टम में किए गए किसी भी बदलाव को, Actions प्रोजेक्ट के डिप्लॉय किए गए वर्शन में नहीं भेजा जाता. हालांकि, उन्हें झलक वाले वर्शन पर टेस्ट किया जा सकता है.

सिम्युलेटर में, अपनी कार्रवाई को मुख्य तौर पर शुरू करने की सुविधा की जांच करने के लिए, यह तरीका अपनाएं:

  1. अपने प्रोजेक्ट को Actions console में टेस्टिंग के लिए डिप्लॉय करने के लिए, टर्मिनल में यह कमांड चलाएं:
gactions deploy preview

आपको इस तरह का आउटपुट मिलेगा:

✔ Done. You can now test your changes in Simulator with this URL: http://console.actions.google.com/project/{project-id}/simulator?disableAutoPreview
  1. दिए गए यूआरएल को कॉपी करें और उसे किसी ब्राउज़र में चिपकाएं.
  2. सिम्युलेटर में अपनी कार्रवाई शुरू करने के लिए, इनपुट फ़ील्ड में Talk to my test app टाइप करें और Enter दबाएं.

656f5736af6a5a07.png

जब उपयोगकर्ता, आपके ऐक्शन को मुख्य तौर पर शुरू करने का अनुरोध करता है, तब Assistant, आपके बनाए गए वेलकम मैसेज के साथ जवाब देती है. इस समय, Assistant के स्वागत करने के बाद बातचीत खत्म हो जाती है. अगले सेक्शन में, अपने ऐक्शन में बदलाव करें, ताकि बातचीत जारी रहे.

इवेंट लॉग देखना

Actions console के टेस्ट टैब में होने पर, पैनल में इवेंट लॉग दिखते हैं. इनमें बातचीत के इतिहास को इवेंट लॉग के तौर पर दिखाया जाता है. हर इवेंट लॉग में, बातचीत के उस मोड़ के दौरान होने वाले इवेंट दिखते हैं.

फ़िलहाल, आपकी कार्रवाई में एक इवेंट लॉग है. इसमें उपयोगकर्ता का इनपुट ("मेरे टेस्ट ऐप्लिकेशन से बात करो") और आपकी कार्रवाई का जवाब, दोनों दिखते हैं. इस स्क्रीनशॉट में, आपके ऐक्शन का इवेंट लॉग दिखाया गया है:

a1b748d1fcebca80.png

अगर इवेंट लॉग में मौजूद Talk to my test app के बगल में मौजूद नीचे की ओर वाले ऐरो पर क्लिक किया जाता है, तो आपको बातचीत के उस मोड़ पर हुए इवेंट, समय के हिसाब से क्रम में दिखेंगे:

  • userInput: यह उपयोगकर्ता के इनपुट ("मेरे टेस्ट ऐप्लिकेशन से बात करो") से मेल खाता है
  • interactionMatch: यह आपकी कार्रवाई के मुख्य इनवोकेशन रिस्पॉन्स से मेल खाता है. इसे उपयोगकर्ता के इनपुट से ट्रिगर किया गया था. ऐरो पर क्लिक करके इस लाइन को बड़ा करने पर, आपको मुख्य इनवोकेशन (A wondrous greeting, adventurer!...) के लिए जोड़ा गया प्रॉम्प्ट दिखेगा
  • endConversation: यह Main invocation इंटेंट में चुने गए ट्रांज़िशन से मेल खाता है. फ़िलहाल, इससे बातचीत खत्म हो जाती है. इस कोडलैब के अगले सेक्शन में, आपको ट्रांज़िशन के बारे में ज़्यादा जानकारी मिलेगी.

इवेंट लॉग से पता चलता है कि आपकी कार्रवाई कैसे काम कर रही है. अगर आपको कोई समस्या आ रही है, तो ये आपकी कार्रवाई को डीबग करने के लिए मददगार टूल हैं. किसी इवेंट की जानकारी देखने के लिए, इवेंट के नाम के बगल में मौजूद ऐरो पर क्लिक करें. जैसा कि इस स्क्रीनशॉट में दिखाया गया है:

fcc389b59af5bef1.png

4. अपने ऐक्शन के लिए बातचीत तैयार करना

अब जब आपने यह तय कर लिया है कि उपयोगकर्ता के Action को चालू करने के बाद क्या होगा, तो अब अपने Action की बातचीत का बाकी हिस्सा बनाया जा सकता है. इस कोडलैब को जारी रखने से पहले, इन शब्दों के बारे में जानें. इससे आपको यह समझने में मदद मिलेगी कि आपकी कार्रवाई की बातचीत कैसे काम करती है:

आपकी कार्रवाई में एक या कई सीन हो सकते हैं. हर सीन को चलाने से पहले, उसे चालू करना ज़रूरी है. इस कोडलैब में बनाए गए ऐक्शन में सिर्फ़ एक सीन है, जिसका नाम Start है. किसी सीन को चालू करने का सबसे सामान्य तरीका यह है कि आप अपनी कार्रवाई को इस तरह कॉन्फ़िगर करें कि जब उपयोगकर्ता का इनपुट, सीन में मौजूद किसी इंटेंट से मेल खाए, तो वह इंटेंट किसी दूसरे सीन पर ट्रांज़िशन को ट्रिगर करे और उसे चालू करे.

उदाहरण के लिए, मान लें कि कोई काल्पनिक कार्रवाई है, जो उपयोगकर्ता को जानवरों के बारे में जानकारी देती है. जब उपयोगकर्ता इस कार्रवाई को शुरू करता है, तो Main invocation इंटेंट मैच हो जाता है और Facts. नाम के सीन पर ट्रांज़िशन ट्रिगर हो जाता है. यह ट्रांज़िशन, Facts सीन को चालू करता है. यह सीन, उपयोगकर्ता को यह प्रॉम्प्ट भेजता है: Would you like to hear a fact about cats or dogs? Facts सीन में, Cat नाम का कस्टम इंटेंट होता है. इसमें ट्रेनिंग के ऐसे वाक्यांश होते हैं जिन्हें उपयोगकर्ता, बिल्ली के बारे में कोई जानकारी पाने के लिए बोल सकता है. जैसे, "मुझे बिल्ली के बारे में कोई जानकारी चाहिए" या "बिल्ली". जब उपयोगकर्ता बिल्ली के बारे में कोई दिलचस्प जानकारी सुनने के लिए कहता है, तो Cat इंटेंट मैच हो जाता है. इसके बाद, Cat fact. सीन पर ट्रांज़िशन ट्रिगर होता है. Cat fact सीन चालू होता है और उपयोगकर्ता को एक प्रॉम्प्ट भेजता है. इसमें बिल्ली के बारे में दिलचस्प जानकारी शामिल होती है.

a78f549c90c3bff6.png

पहली इमेज. Actions SDK की मदद से बनाई गई किसी कार्रवाई में, बातचीत के सामान्य टर्न का फ़्लो.

सीन, इंटेंट, और ट्रांज़िशन मिलकर आपकी बातचीत का लॉजिक बनाते हैं. साथ ही, ये तय करते हैं कि उपयोगकर्ता आपकी कार्रवाई के दौरान बातचीत के अलग-अलग पाथ पर कैसे जा सकता है. नीचे दिए गए सेक्शन में, आपको एक सीन बनाना होता है. साथ ही, यह तय करना होता है कि उपयोगकर्ता के आपकी कार्रवाई शुरू करने के बाद, वह सीन कैसे चालू होगा.

मुख्य इनवोकेशन से सीन पर ट्रांज़िशन करना

इस सेक्शन में, Start नाम का एक नया सीन बनाया जाता है. यह सीन, उपयोगकर्ता को एक प्रॉम्प्ट भेजता है. इसमें पूछा जाता है कि क्या उसे अपनी किस्मत के बारे में जानना है. आपको मुख्य इनवोकेशन से नए Start सीन में ट्रांज़िशन भी जोड़ना होगा.

यह सीन बनाने और इसमें ट्रांज़िशन जोड़ने के लिए, यह तरीका अपनाएं:

  1. अपने टेक्स्ट एडिटर में custom/global/actions.intent.MAIN.yaml खोलें.
  2. transitionToScene फ़ील्ड (actions.scene.END_CONVERSATION) में मौजूद टेक्स्ट को इससे बदलें: transitionToScene: Start

actions.intent.MAIN.yaml

handler:
  staticPrompt:
    candidates:
    - promptResponse:
        firstSimple:
          variants:
          - speech: Welcome to the mythical land of  Gryffinberg! Based on your clothes,
              you are not from around these lands. It looks like you're on your way
              to an epic journey.
transitionToScene: Start

इससे आपके ऐक्शन को मुख्य इनवोकेशन से Start सीन पर ट्रांज़िशन करने का निर्देश मिलता है.

  1. फ़ाइल सेव करें.
  2. टर्मिनल में, custom डायरेक्ट्री में एक नई scenes डायरेक्ट्री बनाएं:
mkdir custom/scenes 
  1. scenes डायरेक्ट्री में Start.yaml नाम की एक नई फ़ाइल बनाएं. यह फ़ाइल, आपके ऐक्शन में start सीन को दिखाती है:
touch custom/scenes/Start.yaml 
  1. अपने टेक्स्ट एडिटर में Start.yaml खोलें.
  2. नीचे दिए गए कोड को Start.yaml फ़ाइल में चिपकाएं:

Start.yaml

onEnter:
  staticPrompt:
    candidates:
    - promptResponse:
        firstSimple:
          variants:
          - speech: Before you continue on your quest, would you like your fortune
              told?

Start.yaml फ़ाइल कोड में, onEnter नाम का एक फ़ील्ड होता है. यह किसी सीन के लाइफ़साइकल में चलने वाली पहली स्टेज होती है.

इस मामले में, जब उपयोगकर्ता पहली बार Start सीन में जाता है, तब प्रॉम्प्ट (Before you continue on your quest...) को प्रॉम्प्ट की सूची में जोड़ दिया जाता है.

सुझाव वाले चिप जोड़ना

सुझाव वाले चिप, उपयोगकर्ता को क्लिक किए जा सकने वाले सुझाव देते हैं. आपकी कार्रवाई, उपयोगकर्ता के इनपुट के तौर पर इन सुझावों को प्रोसेस करती है. इस सेक्शन में, आपको Yes और No सुझाव वाले चिप जोड़ने होते हैं. ये चिप, अभी कॉन्फ़िगर किए गए प्रॉम्प्ट (Before you continue on your quest, would you like your fortune told?) के नीचे दिखते हैं. इससे, स्क्रीन वाले डिवाइसों पर उपयोगकर्ताओं को मदद मिलती है.

Start सीन के प्रॉम्ट में सुझाव वाले चिप जोड़ने के लिए, यह तरीका अपनाएं:

  1. Start.yaml में मौजूद कोड को इस कोड स्निपेट से मैच करने के लिए अपडेट करें. इसमें सुझाव वाले चिप को कॉन्फ़िगर करने का कोड शामिल है:

Start.yaml

onEnter:
  staticPrompt:
    candidates:
    - promptResponse:
        firstSimple:
          variants:
          - speech: Before you continue on your quest, would you like your fortune
              told?
        suggestions:
        - title: "Yes"
        - title: "No"
  1. फ़ाइल सेव करें.

सिम्युलेटर में अपने ऐक्शन की जांच करना

इस समय, आपकी कार्रवाई को मुख्य इनवोकेशन से Start सीन पर ट्रांज़िशन करना चाहिए. साथ ही, उपयोगकर्ता से पूछना चाहिए कि क्या उसे अपनी किस्मत के बारे में जानना है. सिमुलेट किए गए डिसप्ले में सुझाव वाले चिप भी दिखने चाहिए.

सिम्युलेटर में अपने ऐक्शन की जांच करने के लिए, यह तरीका अपनाएं:

  1. टर्मिनल में, यह कमांड चलाएं:
gactions deploy preview

आपको इस तरह का आउटपुट मिलेगा:

✔ Done. You can now test your changes in Simulator with this URL: http://console.actions.google.com/project/{project-id}/simulator?disableAutoPreview
  1. दिए गए यूआरएल को कॉपी करें और उसे किसी ब्राउज़र में चिपकाएं.
  2. सिम्युलेटर पर जाने के लिए, टेस्ट करें पर क्लिक करें.
  3. इनपुट फ़ील्ड में Talk to my test app लिखें और Enter दबाएं. आपकी कार्रवाई को Main invocation प्रॉम्प्ट और जोड़े गए Start सीन प्रॉम्प्ट के साथ जवाब देना चाहिए. जैसे, "आगे बढ़ने से पहले, क्या आपको अपनी किस्मत के बारे में जानना है?". साथ ही, सुझाव वाले चिप भी दिखने चाहिए.

इस इंटरैक्शन को यहां दिए गए स्क्रीनशॉट में दिखाया गया है:

3c2013ebb2da886a.png

  1. प्रॉम्प्ट का जवाब देने के लिए, हां या नहीं सुझाव वाले चिप पर क्लिक करें. (इनपुट फ़ील्ड में "हाँ" या "नहीं" भी कहा जा सकता है या Yes या No डाला जा सकता है.)

प्रॉम्प्ट का जवाब देने पर, आपकी कार्रवाई एक मैसेज के साथ जवाब देती है. इसमें बताया जाता है कि वह आपके इनपुट को नहीं समझ पा रही है: "माफ़ करें, मुझे समझ में नहीं आया. क्या आपको फिर से कोशिश करनी है?" आपने अब तक अपने ऐक्शन को "हाँ" या "नहीं" इनपुट को समझने और जवाब देने के लिए कॉन्फ़िगर नहीं किया है. इसलिए, आपका ऐक्शन आपके इनपुट को NO_MATCH इंटेंट से मैच करता है.

डिफ़ॉल्ट रूप से, NO_MATCH सिस्टम इंटेंट सामान्य जवाब देता है. हालांकि, इन जवाबों को अपनी पसंद के मुताबिक बनाया जा सकता है. इससे उपयोगकर्ता को यह पता चलेगा कि आपको उसका इनपुट समझ नहीं आया. जब Assistant, उपयोगकर्ता के इनपुट से तीन बार मैच नहीं कर पाती है, तो वह आपके ऐक्शन के साथ उपयोगकर्ता की बातचीत को खत्म कर देती है.

yes और no इंटेंट जोड़ना

अब उपयोगकर्ता, आपके ऐक्शन के सवाल का जवाब दे सकते हैं. इसलिए, आपके पास अपने ऐक्शन को कॉन्फ़िगर करने का विकल्प है, ताकि उपयोगकर्ताओं के जवाबों ("हाँ" या "नहीं") को समझा जा सके. यहां दिए गए सेक्शन में, ऐसे कस्टम इंटेंट बनाए जाते हैं जो उपयोगकर्ता के "हां" या "नहीं" कहने पर मैच होते हैं. साथ ही, इन इंटेंट को Start सीन में जोड़ा जाता है.

yes इंटेंट बनाएं

yes इंटेंट बनाने के लिए, यह तरीका अपनाएं:

  1. टर्मिनल में, custom डायरेक्ट्री में intents नाम की नई डायरेक्ट्री बनाएं:
mkdir custom/intents 
  1. intents डायरेक्ट्री में yes.yaml नाम की एक नई फ़ाइल बनाएं:
touch custom/intents/yes.yaml
  1. अपने टेक्स्ट एडिटर में yes.yaml खोलें.
  2. ट्रेनिंग फ़्रेज़ वाला यह कोड स्निपेट, yes.yaml में चिपकाएं:

yes.yaml

trainingPhrases:
- of course
- let's do it
- ok
- sure
- "y"
- "yes"
  1. फ़ाइल सेव करें.

Start सीन में yes इंटेंट जोड़ें

अब कार्रवाई यह समझ सकती है कि उपयोगकर्ता "हाँ" कहने के लिए क्या कह रहा है. yes सीन में yes कस्टम इंटेंट जोड़ा जा सकता है, क्योंकि उपयोगकर्ता Start प्रॉम्प्ट ("आगे बढ़ने से पहले, क्या आपको अपनी किस्मत के बारे में जानना है?") का जवाब दे रहा है.Start

इस कस्टम इंटेंट को Start सीन में जोड़ने के लिए, यह तरीका अपनाएं:

  1. अपने टेक्स्ट एडिटर में custom/scenes/Start.yaml खोलें.
  2. Start.yaml फ़ाइल के आखिर में intentEvents और yes हैंडलर जोड़ें:

Start.yaml

intentEvents:
- handler:
    staticPrompt:
      candidates:
      - promptResponse:
          firstSimple:
            variants:
            - speech: Your future depends on the item you choose to use for your quest. Choose wisely! Farewell, stranger.
  intent: "yes"
  transitionToScene: actions.scene.END_CONVERSATION

yes इंटेंट मैच होने पर, प्रॉम्प्ट की सूची में "आपका भविष्य, इस बात पर निर्भर करता है कि आपने क्वेस्ट के लिए किस आइटम को चुना है..." प्रॉम्प्ट जोड़ दिया जाता है. इसके बाद, Start सीन, actions.scene.END_CONVERSATION सिस्टम सीन में बदल जाता है. यह सीन, प्रॉम्प्ट की कतार में प्रॉम्प्ट डिलीवर करता है और बातचीत को खत्म करता है.

सिम्युलेटर में yes इंटेंट की जांच करना

इस समय, आपकी कार्रवाई को यह समझ आ जाता है कि उपयोगकर्ता को अपनी किस्मत के बारे में कब जानना है. इसके बाद, वह सही जवाब देती है.

सिम्युलेटर में इस इंटेंट को टेस्ट करने के लिए, यह तरीका अपनाएं:

  1. टर्मिनल में, यह कमांड चलाएं:
gactions deploy preview

आपको इस तरह का आउटपुट मिलेगा:

✔ Done. You can now test your changes in Simulator with this URL: http://console.actions.google.com/project/{project-id}/simulator?disableAutoPreview
  1. दिए गए यूआरएल को कॉपी करें और उसे किसी ब्राउज़र में चिपकाएं.
  2. सिम्युलेटर पर जाने के लिए, टेस्ट करें पर क्लिक करें.
  3. सिम्युलेटर में अपने ऐक्शन को आज़माने के लिए, इनपुट फ़ील्ड में Talk to my test app टाइप करें और Enter दबाएं.
  4. इनपुट फ़ील्ड में Yes लिखें और Enter दबाएं. इसके अलावा, हां सुझाव वाले चिप पर क्लिक करें.

f131998710d8ffd8.png

आपका ऐक्शन, उपयोगकर्ता को जवाब देता है और बताता है कि उसका भाग्य, उसके चुने गए विकल्प पर निर्भर करता है. इसके बाद, आपका ऐक्शन सेशन खत्म कर देता है, क्योंकि आपने End conversation इंटेंट के लिए yes ट्रांज़िशन को कॉन्फ़िगर किया है.

no इंटेंट बनाएं

अब no इंटेंट बनाया जा सकता है, ताकि जब उपयोगकर्ता को अपनी किस्मत के बारे में नहीं जानना हो, तो आपकी कार्रवाई उसे समझकर जवाब दे सके.

इस इंटेंट को बनाने के लिए, यह तरीका अपनाएं:

  1. टर्मिनल में, intents डायरेक्ट्री में no.yaml नाम की एक नई फ़ाइल बनाएं:
touch custom/intents/no.yaml
  1. अपने टेक्स्ट एडिटर में no.yaml खोलें.
  2. इन ट्रेनिंग फ़्रेज़ को no.yaml फ़ाइल में चिपकाएं:

no.yaml

trainingPhrases:
- nope
- I don't want
- "n"
- "no"
- nah
- no thanks
  1. फ़ाइल सेव करें.

Start सीन में no इंटेंट जोड़ें

अब कार्रवाई यह समझ सकती है कि उपयोगकर्ता "नहीं" या "नहीं" से मिलता-जुलता कोई जवाब दे रहा है. जैसे, "नहीं". आपको no सीन में no कस्टम इंटेंट जोड़ना होगा, क्योंकि उपयोगकर्ता Start प्रॉम्प्ट ("आगे बढ़ने से पहले, क्या आपको अपनी किस्मत के बारे में जानना है?") का जवाब दे रहा है.Start

Start सीन के लिए यह इंटेंट जोड़ने के लिए, यह तरीका अपनाएं:

  1. अपने टेक्स्ट एडिटर में custom/scenes/Start.yaml खोलें.
  2. Start.yaml में, yes हैंडलर के नीचे यह no हैंडलर जोड़ें:

Start.yaml

- handler:
    staticPrompt:
      candidates:
      - promptResponse:
          firstSimple:
            variants:
            - speech: I understand, stranger. Best of luck on your quest! Farewell.
  intent: "no"
  transitionToScene: actions.scene.END_CONVERSATION
  1. फ़ाइल सेव करें.

सिम्युलेटर में no इंटेंट की जांच करना

इस समय, आपकी कार्रवाई यह समझ जाती है कि उपयोगकर्ता को अपनी किस्मत के बारे में नहीं जानना है. इसलिए, वह सही जवाब देती है.

सिम्युलेटर में इस इंटेंट को टेस्ट करने के लिए, यह तरीका अपनाएं:

  1. टर्मिनल में, यह कमांड चलाएं:
gactions deploy preview

आपको इस तरह का आउटपुट मिलेगा:

✔ Done. You can now test your changes in Simulator with this URL: http://console.actions.google.com/project/{project-id}/simulator?disableAutoPreview
  1. दिए गए यूआरएल को कॉपी करें और उसे किसी ब्राउज़र में चिपकाएं.
  2. सिम्युलेटर पर जाने के लिए, टेस्ट करें पर क्लिक करें.
  3. इनपुट फ़ील्ड में Talk to my test app लिखें और Enter दबाएं.
  4. इनपुट फ़ील्ड में No लिखें और Enter दबाएं. इसके अलावा, No सुझाव वाले चिप पर क्लिक करें.

c0c8b04066577eb2.png

उपयोगकर्ता को उसकी किस्मत के बारे में बताने के बजाय, आपका ऐक्शन उसे उसकी यात्रा के लिए शुभकामनाएं देता है. इसके बाद, आपका ऐक्शन सेशन खत्म कर देता है, क्योंकि आपने no इंटेंट के लिए End conversation ट्रांज़िशन को कॉन्फ़िगर किया है.

5. ऑर्डर पूरा करने की सुविधा लागू करना

फ़िलहाल, आपकी कार्रवाई के जवाब स्टैटिक हैं. जब प्रॉम्प्ट वाला कोई सीन चालू होता है, तो आपकी कार्रवाई हर बार एक ही प्रॉम्प्ट भेजती है. इस सेक्शन में, फ़ुलफ़िलमेंट लागू किया जाता है. इसमें, बातचीत के दौरान डाइनैमिक जवाब जनरेट करने का लॉजिक होता है.

आपका फ़ुलफ़िलमेंट यह पता लगाता है कि उपयोगकर्ता, लौटने वाला उपयोगकर्ता है या नया उपयोगकर्ता. साथ ही, यह लौटने वाले उपयोगकर्ताओं के लिए, ऐक्शन के ग्रीटिंग मैसेज में बदलाव करता है. दोबारा आने वाले उपयोगकर्ताओं के लिए, स्वागत संदेश छोटा कर दिया जाता है. इसमें उपयोगकर्ता के वापस आने की पुष्टि की जाती है: "एडवेंचरर, आपका स्वागत है! ग्रिफ़िनबर्ग की काल्पनिक दुनिया में आपका फिर से स्वागत है!"

इस कोडलैब के लिए, Cloud Functions एडिटर का इस्तेमाल करके, फ़ुलफ़िलमेंट कोड में बदलाव किया जाता है और उसे डिप्लॉय किया जाता है.

आपकी कार्रवाई, वेबहुक को ट्रिगर कर सकती है. ये वेबहुक, आपको किसी इवेंट के पूरा होने की सूचना देते हैं. यह इवेंट, कार्रवाई शुरू होने के दौरान या सीन के एक्ज़ीक्यूशन के दौरान होता है. जब कोई वेबुक ट्रिगर होता है, तो आपकी कार्रवाई, JSON पेलोड के साथ एक अनुरोध भेजती है. यह अनुरोध, इवेंट को प्रोसेस करने के लिए इस्तेमाल किए जाने वाले हैंडलर के नाम के साथ, फ़ुलफ़िलमेंट को भेजा जाता है. यह हैंडलर, कुछ लॉजिक को लागू करता है और उससे जुड़ा JSON रिस्पॉन्स दिखाता है.

अपने फ़ुलफ़िलमेंट सिस्टम को बेहतर बनाना

इस सेक्शन में, आपको फ़ुलफ़िलमेंट में बदलाव करना होगा, ताकि वापस लौटने वाले उपयोगकर्ताओं और नए उपयोगकर्ताओं के लिए अलग-अलग प्रॉम्प्ट जनरेट किए जा सकें. ऐसा तब होगा, जब वे आपकी कार्रवाई शुरू करेंगे.

इस लॉजिक को पूरा करने के लिए, यह तरीका अपनाएं:

  1. टर्मिनल में, पक्का करें कि आप अपने प्रोजेक्ट की रूट डायरेक्ट्री में हों. इसके बाद, नई webhooks डायरेक्ट्री बनाएं:
mkdir webhooks 
  1. webhooks डायरेक्ट्री में ActionsOnGoogleFulfillment.yaml नाम की एक नई फ़ाइल बनाएं:
touch webhooks/ActionsOnGoogleFulfillment.yaml
  1. अपने टेक्स्ट एडिटर में ActionsOnGoogleFulfillment.yaml खोलें.
  2. ActionsOnGoogleFulfillment.yaml फ़ाइल में greeting हैंडलर और inlineCloudFunction कॉन्टेंट जोड़ें:

ActionsOnGoogleFulfillment.yaml

handlers:
- name: greeting
inlineCloudFunction:
  executeFunction: ActionsOnGoogleFulfillment

ActionsOnGoogleFulfillment.yaml फ़ाइल, आपके वेबुक हैंडलर (जैसे कि greeting हैंडलर) के बारे में बताती है. साथ ही, यह आपके ऐक्शन को वेबुक एंडपॉइंट के तौर पर Cloud Functions का इस्तेमाल करने के लिए कहती है.

  1. webhooks डायरेक्ट्री में नई ActionsOnGoogleFulfillment डायरेक्ट्री बनाएं:
mkdir webhooks/ActionsOnGoogleFulfillment
  1. ActionsOnGoogleFulfillment डायरेक्ट्री में index.js नाम की एक नई फ़ाइल बनाएं:
touch webhooks/ActionsOnGoogleFulfillment/index.js
  1. अपने टेक्स्ट एडिटर में index.js खोलें.
  2. index.js में यह कोड जोड़ें:

index.js

const { conversation } = require('@assistant/conversation');
const functions = require('firebase-functions');

const app = conversation({debug: true});

app.handle('greeting', conv => {
 let message = 'A wondrous greeting, adventurer! Welcome back to the mythical land of Gryffinberg!';
 if (!conv.user.lastSeenTime) {
   message = 'Welcome to the mythical land of  Gryffinberg! Based on your clothes, you are not from around these lands. It looks like you\'re on your way to an epic journey.';
 }
 conv.add(message);
});


exports.ActionsOnGoogleFulfillment = functions.https.onRequest(app);

यह कोड greeting हैंडलर को तय करता है. यह हैंडलर,

उपयोगकर्ता.

  1. फ़ाइल सेव करें.
  2. ActionsOnGoogleFulfillment डायरेक्ट्री में package.json नाम की एक नई फ़ाइल बनाएं:
touch webhooks/ActionsOnGoogleFulfillment/package.json

package.json फ़ाइल में, आपके वेबुक के लिए डिपेंडेंसी और अन्य मेटाडेटा की जानकारी दी जाती है.

  1. अपने टेक्स्ट एडिटर में package.json खोलें.
  2. इस GitHub रिपॉज़िटरी से कोड कॉपी करें और इसे package.json फ़ाइल में चिपकाएं.
  3. फ़ाइल सेव करें.

कोड को समझना

आपका फ़ुलफ़िलमेंट, Node.js के लिए Actions on Google Fulfillment लाइब्रेरी का इस्तेमाल करता है. यह Google Assistant से मिले एचटीटीपी अनुरोधों का जवाब देता है.

पिछले कोड स्निपेट में, greeting हैंडलर को तय किया गया है. यह हैंडलर, यह जांच करता है कि उपयोगकर्ता ने lastSeenTime प्रॉपर्टी के साथ पहले कोई कार्रवाई की है या नहीं. अगर lastSeenTime प्रॉपर्टी को तय नहीं किया गया है, तो उपयोगकर्ता नया है. उसे नए उपयोगकर्ताओं के लिए तैयार किया गया मैसेज मिलता है. ऐसा न होने पर, मैसेज में उपयोगकर्ता के वापस आने की पुष्टि की जाती है और वेलकम मैसेज में बदलाव करके उसे जनरेट किया जाता है.

वेबहुक को ट्रिगर करने के लिए, मुख्य इनवोकेशन को अपडेट करना

greeting फ़ंक्शन को तय करने के बाद, अब मुख्य इनवोकेशन इंटेंट में greeting इवेंट हैंडलर को कॉन्फ़िगर किया जा सकता है. इससे आपकी कार्रवाई को पता चलेगा कि उपयोगकर्ता के आपकी कार्रवाई को शुरू करने पर, इस फ़ंक्शन को कॉल करना है.

नए greeting हैंडलर को कॉल करने के लिए, अपनी कार्रवाई को कॉन्फ़िगर करने के लिए यह तरीका अपनाएं:

  1. अपने टेक्स्ट एडिटर में custom/global/actions.intent.MAIN.yaml खोलें.
  2. actions.intent.MAIN.yaml में मौजूद कोड की जगह यह कोड डालें:

actions.intent.MAIN.yaml

handler:
  webhookHandler: greeting
transitionToScene: Start
  1. फ़ाइल सेव करें.

अब, मुख्य इनवोकेशन इंटेंट मैच होने पर, greeting वेबबुक हैंडलर को कॉल किया जाता है.

सिम्युलेटर में अपडेट किए गए मुख्य इनवोकेशन की जांच करना

सिम्युलेटर में अपने ऐक्शन की जांच करने के लिए, यह तरीका अपनाएं:

  1. टर्मिनल में, यह कमांड चलाएं:
gactions deploy preview

आपको इस तरह का आउटपुट मिलेगा:

✔ Done. You can now test your changes in Simulator with this URL: http://console.actions.google.com/project/{project-id}/simulator?disableAutoPreview
  1. दिए गए यूआरएल को कॉपी करें और उसे किसी ब्राउज़र में चिपकाएं.
  2. सिम्युलेटर में अपने ऐक्शन को आज़माने के लिए, इनपुट फ़ील्ड में Talk to my test app टाइप करें और Enter दबाएं.

आपने इस कोडलैब में पहले ही अपने ऐक्शन की जांच कर ली है. इसलिए, आप नए उपयोगकर्ता नहीं हैं. इसलिए, आपको यह छोटा सा अभिवादन मिलेगा: "अद्भुत अभिवादन, एडवेंचरर! ग्रिफ़िनबर्ग की काल्पनिक दुनिया में आपका फिर से स्वागत है!..."

6. Actions Builder की मदद से ऐक्शन को विज़ुअलाइज़ करना

Actions SDK टूल, वेब पर आधारित IDE के साथ काम करता है. इसे Actions Builder कहा जाता है. यह Actions console में इंटिग्रेट होता है. gactions push कमांड का इस्तेमाल करके, अपने लोकल फ़ाइल सिस्टम को कंसोल में मौजूद अपने ऐक्शन के ड्राफ़्ट में पुश किया जा सकता है. gactions deploy preview की मदद से, सिर्फ़ सिम्युलेटर में अपनी कार्रवाई की जांच की जा सकती है. हालांकि, gactions push आपकी सभी लोकल फ़ाइलों के कॉन्टेंट को Actions Builder में ले जाता है.

Actions console, आपके ऐक्शन के कॉन्फ़िगरेशन को विज़ुअल के तौर पर दिखाती है. डेवलपमेंट के दौरान, अपने ऐक्शन को विज़ुअलाइज़ करने से आपको मदद मिल सकती है. इससे आपके ऐक्शन के उस वर्शन पर कोई असर नहीं पड़ता जिसे टेस्टिंग के लिए उपलब्ध कराया जाता है.

अपने Actions प्रोजेक्ट को पुश करने और उसे Actions console में देखने के लिए, यह तरीका अपनाएं:

  1. अपने प्रोजेक्ट को Actions console में पुश करने के लिए, टर्मिनल में यह कमांड चलाएं:
gactions push

आपको इस तरह का आउटपुट मिलेगा:

✔ Done. Files were pushed to Actions Console, and you can now view your project with this URL: https://console.actions.google.com/project/{project-id}/overview. If you want to test your changes, run "gactions deploy preview", or navigate to the Test section in the Console.
  1. दिए गए यूआरएल को कॉपी करें और उसे किसी ब्राउज़र में चिपकाएं.
  2. Actions console में, सबसे ऊपर मौजूद नेविगेशन बार में जाकर Develop पर क्लिक करें.
  3. सीन के बगल में मौजूद ड्रॉप-डाउन ऐरो पर क्लिक करें. इसके बाद, शुरू करें पर क्लिक करें. आपको अपने ऐक्शन के Start सीन का विज़ुअल दिखेगा. यह विज़ुअल, इस स्क्रीनशॉट में दिखाए गए विज़ुअल की तरह होगा:

332404b148609e96.png

अपने प्रोजेक्ट को क्लीन अप करें [सुझाया गया]

संभावित शुल्क से बचने के लिए, हमारा सुझाव है कि आप उन प्रोजेक्ट को हटा दें जिनका आपको इस्तेमाल नहीं करना है. इस कोडलैब में बनाए गए प्रोजेक्ट मिटाने के लिए, यह तरीका अपनाएं:

  1. Cloud प्रोजेक्ट और संसाधनों को मिटाने के लिए, प्रोजेक्ट बंद करना (मिटाना) सेक्शन में दिया गया तरीका अपनाएं.
  1. ज़रूरी नहीं: अगर आपको अपने प्रोजेक्ट को Actions console से तुरंत हटाना है, तो प्रोजेक्ट मिटाना सेक्शन में दिए गए चरणों को पूरा करें. अगर आपने यह चरण पूरा नहीं किया, तो आपका प्रोजेक्ट करीब 30 दिनों के बाद अपने-आप हट जाएगा.

7. बधाई हो!

आपको Actions SDK की मदद से, Google Assistant के लिए ऐक्शन बनाने के बारे में बुनियादी जानकारी हो.

आपने क्या कवर किया

  • Actions console में Actions प्रोजेक्ट सेट अप करने का तरीका
  • अपने लोकल फ़ाइल सिस्टम पर Actions प्रोजेक्ट बनाने के लिए, Actions SDK टूल का इस्तेमाल कैसे करें
  • मुख्य इनवोकेशन में प्रॉम्प्ट कैसे जोड़ें, ताकि उपयोगकर्ता आपके ऐक्शन से बातचीत शुरू कर सकें
  • सीन, इंटेंट, ट्रांज़िशन, सुझाव वाले चिप, और फ़ुलफ़िलमेंट की मदद से बातचीत वाला इंटरफ़ेस बनाने का तरीका
  • कार्रवाइयों के सिम्युलेटर की मदद से, अपनी कार्रवाई की जांच करने का तरीका

ज़्यादा जानें

Google Assistant के लिए ऐक्शन बनाने के बारे में ज़्यादा जानने के लिए, इन संसाधनों का इस्तेमाल करें:

Twitter पर @ActionsOnGoogle को फ़ॉलो करें. इससे आपको नए अपडेट के बारे में जानकारी मिलती रहेगी. साथ ही, #AoGDevs के साथ ट्वीट करके, हमें बताएं कि आपने क्या बनाया!

राय जानने के लिए सर्वे

जाने से पहले, कृपया अपने अनुभव के बारे में यह छोटा सा सर्वे भरें.