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

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

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

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

इस कोडलैब के लिए अपना 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. कोड लैब के लिए, Actions प्रोजेक्ट के बगल में मौजूद Actions में जाकर, तीन बिंदुओं पर क्लिक करें.
  8. बिलिंग बदलें पर क्लिक करें.
  9. ड्रॉप-डाउन मेन्यू में, कॉन्फ़िगर किया गया बिलिंग खाता चुनें.
  10. खाता सेट करें पर क्लिक करें.

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

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

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

gactions सीएलआई इंस्टॉल करने के लिए, 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 पर चल रही हो.

जब ऐक्शन को ट्रिगर किया जाएगा, तो उसे अब आपके जोड़े गए प्रॉम्प्ट ("A wondrous greeting, adventurer!...") के हिसाब से जवाब देना चाहिए.

अपने ऐक्शन प्रोजेक्ट के वर्शन को अपडेट किए बिना, कंसोल में अपने ऐक्शन की जांच करने के लिए, 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. टर्मिनल में, 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 सीन प्रॉम्प्ट, "Before you continue on your quest, would you like your fortune told?" के साथ जवाब देना चाहिए. साथ ही, सुझाव वाले चिप भी दिखने चाहिए.

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

3c2013ebb2da886a.png

  1. प्रॉम्प्ट का जवाब देने के लिए, हां या नहीं वाले सुझाव चिप पर क्लिक करें. (आपके पास "Yes" या "No" कहने का विकल्प भी है. इसके अलावा, इनपुट फ़ील्ड में 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&quot;
- "yes"
  1. फ़ाइल सेव करें.

Start सीन में 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 इंटेंट मैच होने पर, प्रॉम्प्ट सूची में "Your future depends on the item you choose to use for your quest..." प्रॉम्प्ट जुड़ जाता है. इसके बाद, 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&quot;
- 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. ऑर्डर पूरा करने की सुविधा लागू करना

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

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

इस कोडलैब के लिए, 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(&#>39;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 फ़ुलफ़िलमेंट लाइब्रेरी का इस्तेमाल करता है. यह 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 टूल, वेब पर आधारित आईडीई के साथ काम करता है. इसे 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 का इस्तेमाल करने का तरीका
  • मुख्य बातचीत में प्रॉम्प्ट जोड़ने का तरीका, ताकि उपयोगकर्ता आपकी कार्रवाई के साथ बातचीत शुरू कर सकें
  • सीन, इंटेंट, ट्रांज़िशन, सुझाव वाले चिप, और फ़ुलफ़िलमेंट की मदद से बातचीत वाला इंटरफ़ेस बनाने का तरीका
  • Actions सिम्युलेटर की मदद से, अपनी कार्रवाई को टेस्ट करने का तरीका

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

Google Assistant के लिए कार्रवाइयां बनाने के बारे में ज़्यादा जानने के लिए, यहां दिए गए लेख पढ़ें:

नई घोषणाओं के बारे में जानने के लिए, Twitter पर @ActionsOnGoogle को फ़ॉलो करें. साथ ही, आपने जो बनाया है उसे शेयर करने के लिए, #AoGDevs के साथ ट्वीट करें!

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

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