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

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

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

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

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

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

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

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

1c1e79902bed7230.png18ef55647b4cb52c.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 में, तीन वर्टिकल बिंदुओं (insert icon here) पर क्लिक करें.
  2. प्रोजेक्ट सेटिंग पर क्लिक करें.

6f59050b85943073.png

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

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

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

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

  1. Google Cloud Platform के बिलिंग पेज पर जाएं.
  2. बिलिंग खाता जोड़ें या खाता बनाएं पर क्लिक करें.
  3. पेमेंट के तरीके की जानकारी डालें.
  4. मुफ़्त में आज़माना शुरू करें या सबमिट करें और बिलिंग चालू करें पर क्लिक करें.
  5. Google Cloud Platform के बिलिंग पेज पर जाएं.
  6. मेरे प्रोजेक्ट टैब पर क्लिक करें.
  7. कोड लैब के लिए, Actions प्रोजेक्ट के बगल में मौजूद कार्रवाइयां में जाकर, तीन बिंदुओं पर क्लिक करें.
  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 पर चल रहा हो.

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

अपने Actions प्रोजेक्ट के वर्शन को अपडेट किए बिना, कंसोल में अपनी कार्रवाई को टेस्ट करने के लिए, gactions deploy preview कमांड का इस्तेमाल किया जा सकता है. इस कमांड को चलाने पर, आपके लोकल फ़ाइल सिस्टम में किए गए किसी भी बदलाव को, 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. अपने ऐक्शन के लिए बातचीत तैयार करना

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

आपकी कार्रवाई में एक या कई सीन हो सकते हैं. हर सीन को चलाने से पहले, उसे चालू करना ज़रूरी है. इस कोडलैब में बनाए गए ऐक्शन में सिर्फ़ एक सीन है, जिसका नाम 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. टर्मिनल में, scenes डायरेक्ट्री में एक नई custom डायरेक्ट्री बनाएं:
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 इंटेंट जोड़ें

अब कार्रवाई यह समझ सकती है कि उपयोगकर्ता "हाँ" कहने के लिए क्या कह रहा है. Start सीन में yes कस्टम इंटेंट जोड़ा जा सकता है, क्योंकि उपयोगकर्ता 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

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

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 इंटेंट जोड़ें

अब कार्रवाई यह समझ सकती है कि उपयोगकर्ता "नहीं" या "नहीं" से मिलती-जुलती कोई बात कह रहा है. जैसे, "नहीं". आपको Start सीन में no कस्टम इंटेंट जोड़ना होगा, क्योंकि उपयोगकर्ता 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. ऑर्डर पूरा करने की सुविधा लागू करना

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

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

इस कोडलैब के लिए, फ़ुलफ़िलमेंट कोड में बदलाव करने और उसे डिप्लॉय करने के लिए, 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. क्लाउड प्रोजेक्ट और संसाधन मिटाने के लिए, प्रोजेक्ट बंद करना (मिटाना) सेक्शन में दिया गया तरीका अपनाएं.
  1. ज़रूरी नहीं: अगर आपको अपने प्रोजेक्ट को Actions console से तुरंत हटाना है, तो प्रोजेक्ट मिटाना सेक्शन में दिया गया तरीका अपनाएं. अगर आपने यह चरण पूरा नहीं किया, तो आपका प्रोजेक्ट करीब 30 दिनों के बाद अपने-आप हट जाएगा.

7. बधाई हो!

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

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

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

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

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

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

फ़ीडबैक सर्वे

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