গুগল অ্যাসিস্ট্যান্ট এবং ক্লাউড ফায়ারস্টোর ব্যবহার করে বানান অনুশীলন গেম

1। সংক্ষিপ্ত বিবরণ

গুগল অ্যাসিস্ট্যান্ট ডেভেলপার প্ল্যাটফর্ম আপনাকে স্মার্ট স্পিকার, ফোন, গাড়ি, টিভি, হেডফোন এবং আরও অনেক কিছু সহ 1 বিলিয়নেরও বেশি ডিভাইস জুড়ে Google অ্যাসিস্ট্যান্ট, একজন ভার্চুয়াল ব্যক্তিগত সহকারীর কার্যকারিতা বাড়ানোর জন্য সফ্টওয়্যার তৈরি করতে দেয়। ব্যবহারকারীরা কাজগুলি সম্পন্ন করতে সহকারীকে কথোপকথনে নিযুক্ত করে, যেমন মুদি কেনা বা রাইড বুক করা। একজন ডেভেলপার হিসেবে, আপনি সহকারী ডেভেলপার প্ল্যাটফর্ম ব্যবহার করে সহজেই ব্যবহারকারীদের এবং আপনার নিজের তৃতীয় পক্ষের পরিপূর্ণতা পরিষেবার মধ্যে আনন্দদায়ক এবং কার্যকর কথোপকথনের অভিজ্ঞতা তৈরি এবং পরিচালনা করতে পারেন।

এই কোডল্যাবটি Google সহকারী, ক্লাউড ফাংশন এবং ক্লাউড ফায়ারস্টোরের সাথে বিকাশের জন্য মধ্যবর্তী-স্তরের ধারণাগুলিকে কভার করে৷ এই কোডল্যাবে, আপনি "বানান অনুশীলন" নামে একটি গেম তৈরি করবেন যা ব্যবহারকারীদের শব্দ বানান করতে বলতে Google সহায়ক ব্যবহার করে।

আপনি কি নির্মাণ করবেন

এই কোডল্যাবে, আপনি নিম্নলিখিত কার্যকারিতা সহ একটি পরিশীলিত গেম তৈরি করবেন:

  • ব্যবহারকারীর কাছ থেকে বানান প্রতিক্রিয়া গ্রহণ করে এবং মানের উপর নির্ভর করে, কথোপকথনমূলক প্রম্পটগুলি সংশোধন করে
  • শব্দের বানান সম্পর্কিত ইঙ্গিত সহ উত্তর দেয়, যেমন এর সংজ্ঞা বা শব্দের পুনরাবৃত্তি
  • একটি গেম লুপ তৈরি করে যাতে কোনও ব্যবহারকারী শব্দটি বানান করার পরে আবার সহকারীর সাথে যোগাযোগ করতে পারে

আপনি বিল্ডিং শুরু করার আগে, আপনি "Hey Google, বানান অনুশীলনে কথা বলুন" বলে আপনার Google অ্যাসিস্ট্যান্ট-সক্ষম ডিভাইসে লাইভ অ্যাকশনের সাথে ইন্টারঅ্যাক্ট করতে পারেন। ফিরে আসা ব্যবহারকারীর জন্য এই অ্যাকশনের মাধ্যমে ডিফল্ট পথটি নিম্নলিখিত ইন্টারঅ্যাকশনের মতো দেখায়:

আপনি যখন এই কোডল্যাবটি শেষ করবেন, তখন আপনার সম্পন্ন অ্যাকশনে নিম্নলিখিত কথোপকথন প্রবাহ থাকবে:

2e9f94dc0ceafc96.png

আপনি কি শিখবেন

  • ক্লাউড ফায়ারস্টোরের সাথে কীভাবে যোগাযোগ করবেন
  • ব্যবহারকারীর কাছ থেকে ডেটা সংগ্রহ করতে স্লটগুলি কীভাবে ব্যবহার করবেন
  • কিভাবে একটি ব্যবহারকারীর ইনপুট প্রক্রিয়া এবং একটি প্রতিক্রিয়া ফেরত
  • একটি দৃশ্যে যুক্তি যোগ করতে শর্তগুলি কীভাবে ব্যবহার করবেন
  • কিভাবে একটি গেম লুপ যোগ করতে হয়

আপনি কি প্রয়োজন হবে

এই কোডল্যাবের পূর্বশর্তগুলির মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত রয়েছে:

  • একটি ওয়েব ব্রাউজার, যেমন Google Chrome
  • ক্লাউড ফাংশন লিখতে একটি IDE.
  • একটি পেমেন্ট পদ্ধতি। এই কোডল্যাবটি Firebase-এর জন্য ক্লাউড ফাংশন ব্যবহার করে যার জন্য আপনার প্রজেক্টের Firebase ব্লেজ প্রাইসিং প্ল্যানে থাকা প্রয়োজন ( আরও জানুন )।
  • শেল কমান্ড চালানোর জন্য একটি টার্মিনাল
  • Node.js 10 বা তার পরে

2. ফাংশন কোড পান

কমান্ড লাইন থেকে GitHub সংগ্রহস্থল ক্লোন করুন:

$ git clone https://github.com/FirebaseExtended/codelab-actions-firestore

3. একটি ফায়ারবেস প্রকল্প তৈরি করুন এবং আপনার অ্যাপ সেট আপ করুন৷

একটি ফায়ারবেস প্রকল্প তৈরি করুন

  1. Firebase এ সাইন ইন করুন।
  2. Firebase কনসোলে, প্রজেক্ট যোগ করুন (বা একটি প্রকল্প তৈরি করুন ) ক্লিক করুন, তারপর আপনার Firebase প্রকল্পের নাম দিন Spelling-Practice

66ae8d1894f4477.png

  1. প্রকল্প তৈরির বিকল্পগুলির মাধ্যমে ক্লিক করুন। অনুরোধ করা হলে Firebase শর্তাবলী স্বীকার করুন। Google Analytics সেট আপ করা এড়িয়ে যান, কারণ আপনি এই অ্যাপের জন্য Analytics ব্যবহার করবেন না।

ফায়ারবেস প্রকল্পগুলি সম্পর্কে আরও জানতে, ফায়ারবেস প্রকল্পগুলি বুঝতে দেখুন।

ব্লেজ প্রাইসিং প্ল্যানে আপগ্রেড করুন

Firebase-এর জন্য ক্লাউড ফাংশন ব্যবহার করার জন্য, আপনাকে আপনার Firebase প্রকল্পটিকে Blaze মূল্য পরিকল্পনায় আপগ্রেড করতে হবে, যার মানে আপনি আপনার প্রকল্পে একটি Google ক্লাউড বিলিং অ্যাকাউন্ট সংযুক্ত করবেন৷ এর জন্য আপনাকে একটি ক্রেডিট কার্ড বা অন্য অর্থপ্রদানের পদ্ধতি প্রদান করতে হবে।

ব্লেজ প্ল্যান সহ সমস্ত ফায়ারবেস প্রকল্পগুলির এখনও ক্লাউড ফাংশনগুলির জন্য বিনা খরচে ব্যবহারের কোটাগুলিতে অ্যাক্সেস রয়েছে৷ এই কোডল্যাবে বর্ণিত পদক্ষেপগুলি অ-ব্যয় ব্যবহার সীমার মধ্যে পড়বে৷ যাইহোক, আপনি ক্লাউড স্টোরেজ থেকে ছোট চার্জ ( প্রায় $0.03 ) দেখতে পাবেন, যা আপনার ক্লাউড ফাংশন বিল্ড ইমেজ হোস্ট করতে ব্যবহৃত হয়।

4. Firebase CLI ইনস্টল করুন

Firebase CLI (কমান্ড লাইন ইন্টারফেস) আপনাকে আপনার ক্লাউড ফাংশন স্থাপন করতে সক্ষম করে।

আপনার অপারেটিং সিস্টেম এবং ব্যবহারের ক্ষেত্রে নির্ভর করে Firebase CLI ইনস্টল করার জন্য বেশ কয়েকটি বিকল্প রয়েছে। আপনি যদি ক্লাউড ফাংশনগুলিও ব্যবহার করেন তবে নিম্নলিখিত পদক্ষেপগুলি সবচেয়ে সাধারণ বিকল্পটি বর্ণনা করে৷

  1. নিশ্চিত করুন যে আপনি npm ইনস্টল করেছেন যা সাধারণত Node.js এর সাথে আসে।
  2. নিম্নলিখিত npm কমান্ডটি চালিয়ে CLI ইনস্টল বা আপগ্রেড করুন:
$ npm -g install firebase-tools
  1. যাচাই করুন যে CLI সঠিকভাবে ইনস্টল করা হয়েছে চালানোর মাধ্যমে:
$ firebase --version

নিশ্চিত করুন যে Firebase CLI-এর সংস্করণটি 9.0.0 বা তার পরবর্তী সংস্করণ যাতে ক্লাউড ফাংশনের জন্য প্রয়োজনীয় সমস্ত লেটেস্ট বৈশিষ্ট্য রয়েছে৷ যদি না হয়, উপরে দেখানো হিসাবে আপগ্রেড করতে npm install -g firebase-tools চালান।

  1. চালিয়ে Firebase CLI অনুমোদন করুন:
$ firebase login
  1. বানান-ফাংশন-স্টার্ট ডিরেক্টরি থেকে, আপনার Firebase প্রকল্প ব্যবহার করতে Firebase CLI সেট আপ করুন। নিম্নলিখিত কমান্ডটি চালান, আপনার প্রকল্প আইডি নির্বাচন করুন, তারপর নির্দেশাবলী অনুসরণ করুন। অনুরোধ করা হলে, আপনি যেকোন উপনাম বেছে নিতে পারেন, যেমন codelab
$ firebase use --add

5. ফাংশন ডিরেক্টরি

এখন আপনি ক্লাউড ফাংশনের জন্য Firebase SDK ব্যবহার করে কার্যকারিতা যোগ করবেন গেমটির জন্য ব্যাকএন্ড তৈরি করতে, বানান অনুশীলন

ক্লাউড ফাংশন আপনাকে সার্ভার সেট আপ না করেই ক্লাউডে চলে এমন কোড থাকতে দেয়। এই কোডল্যাব আপনাকে দেখাবে কিভাবে ফায়ারবেস প্রমাণীকরণ, ক্লাউড স্টোরেজ এবং ফায়ারবেস রিয়েলটাইম ডেটাবেস ইভেন্টগুলিতে প্রতিক্রিয়া দেখায় এমন ফাংশন তৈরি করতে হয়। আসুন প্রমাণীকরণ দিয়ে শুরু করি।

ক্লাউড ফাংশনের জন্য Firebase SDK ব্যবহার করার সময়, আপনার ফাংশন কোড functions ডিরেক্টরির অধীনে থাকবে (ডিফল্টরূপে)। আপনার জন্য এটি সহজ করার জন্য, আমরা ইতিমধ্যেই functions/index.js ফাইল তৈরি করেছি যেখানে আপনার কোড যাবে। এগিয়ে যাওয়ার আগে নির্দ্বিধায় functions ডিরেক্টরি পরিদর্শন করুন।

$ cd functions
$ ls

আপনার ফাংশন কোডটি একটি Node.js অ্যাপ, এবং তাই একটি package.json প্রয়োজন যা আপনার অ্যাপ সম্পর্কে কিছু তথ্য দেয় এবং নির্ভরতা তালিকা দেয়।

আপনি যদি Node.js এর সাথে পরিচিত না হন তবে কোডল্যাব চালিয়ে যাওয়ার আগে এটি সম্পর্কে আরও জানতে সাহায্য করবে।

package.json ফাইলটি ইতিমধ্যেই দুটি প্রয়োজনীয় নির্ভরতা তালিকাভুক্ত করে: ক্লাউড ফাংশনের জন্য Firebase SDK এবং Firebase অ্যাডমিন SDK ৷ স্থানীয়ভাবে তাদের ইনস্টল করতে, functions ডিরেক্টরি থেকে npm install চালান:

$ npm install

এখন index.js ফাইলটি দেখে নেওয়া যাক:

index.js

/**
 * Copyright 2021 Google Inc. All Rights Reserved.
 * ...
 */
// TODO(DEVELOPER): Import the Cloud Functions for Firebase and Firebase Admin modules here. Also import the Actions SDK here.
// TODO(DEVELOPER): Write the getWordDetailsFromDictionaryAPI function here.
// TODO(DEVELOPER): Write the createSpellingPracticeWord function here.
// TODO(DEVELOPER): Write the app Handle getSpellingWordList function here.
// TODO(DEVELOPER): Write the app Handle getSpellingWord function here.
// TODO(DEVELOPER): Write the app Handle repeatSpellingWord function here.
// TODO(DEVELOPER): Write the app Handle definitionOfSpellingWord function here.
// TODO(DEVELOPER): Write the app Handle verifySpellingWord function here.

আপনি প্রথমে প্রয়োজনীয় মডিউল আমদানি করবেন, তারপর TODO-এর জায়গায় চারটি ফাংশন লিখবেন। মডিউলগুলি আমদানি করতে কোডল্যাবের পরবর্তী ধাপে যান।

6. প্রয়োজনীয় মডিউল আমদানি করুন

এই কোডল্যাবের জন্য তিনটি মডিউল প্রয়োজন।

  • firebase-functions মডিউল আমাদের ক্লাউড ফাংশনের জন্য ট্রিগার লিখতে দেয়
  • firebase-admin মডিউল আমাদেরকে অ্যাডমিন অ্যাক্সেস সহ সার্ভারে ফায়ারবেস প্ল্যাটফর্ম ব্যবহার করতে দেয়, উদাহরণস্বরূপ ক্লাউড ফায়ারস্টোরে লিখতে।
  • অ্যাকশন SDK Node.js ফুলফিলমেন্ট লাইব্রেরি Google অ্যাসিস্ট্যান্টের জন্য অ্যাকশন SDK হ্যান্ডলারগুলি পূরণ করে।
  1. নিম্নলিখিত npm কমান্ডটি চালিয়ে অ্যাকশন SDK ইনস্টল করুন:
$ npm install @assistant/conversation
  1. index.js ফাইলে, প্রথম TODO কে নিম্নলিখিতটি দিয়ে প্রতিস্থাপন করুন।

এই পরিবর্তনগুলি প্রয়োজনীয় মডিউলগুলির প্রতিটি আমদানি করে।

এছাড়াও, ক্লাউড ফাংশন পরিবেশ বা অন্যান্য Google ক্লাউড কন্টেইনারে স্থাপন করা হলে Firebase অ্যাডমিন SDK স্বয়ংক্রিয়ভাবে কনফিগার করা যেতে পারে। যখন আমরা admin.initializeApp(); নীচের পরিবর্তনগুলিতে।

index.js

/**
 * Copyright 2021 Google Inc. All Rights Reserved.
 * ...
 */

// Import the Actions SDK
const {conversation} = require('@assistant/conversation');
const https = require('https');
const app = conversation();
const cors = require('cors')({origin: true});

// Import the Firebase SDK for Cloud Functions.
const functions = require('firebase-functions');
// Import and initialize the Firebase Admin SDK.
const admin = require('firebase-admin');
admin.initializeApp();
// To access Cloud Firestore
const db = admin.firestore();
// TODO(DEVELOPER): Write the getWordDetailsFromDictionaryAPI function here.
// TODO(DEVELOPER): Write the createSpellingPracticeWord function here.
// TODO(DEVELOPER): Write the shuffleWordList function here.
// TODO(DEVELOPER): Write the app Handle getSpellingWordList function here.
// TODO(DEVELOPER): Write the app Handle getSpellingWord function here.
// TODO(DEVELOPER): Write the app Handle repeatSpellingWord function here.
// TODO(DEVELOPER): Write the app Handle definitionOfSpellingWord function here.
// TODO(DEVELOPER): Write the app Handle verifySpellingWord function here.

এখন সহকারী অ্যাকশন সমর্থন করার জন্য ফাংশন ব্যবহার করে ব্যবসায়িক যুক্তি যোগ করা যাক।

7. ফাংশন তৈরি করুন

শব্দের সংজ্ঞাগুলি পান এবং সেগুলিকে ক্লাউড ফায়ারস্টোরে লিখুন৷

শব্দের সংজ্ঞা পেতে আপনি dictionaryapi.dev পাবলিক API ব্যবহার করবেন।

index.js ফাইলে, getWordDetailsFromDictionaryAPI এর জন্য TODO-কে নিম্নলিখিত দিয়ে প্রতিস্থাপন করুন:

index.js

// Retrieves word definition and audio pronunciation from api.dictionaryapi.dev service
// Function uses service provided by https://dictionaryapi.dev/
async function getWordDetailsFromDictionaryAPI(word) {
  let responseData="";
  let req = https.request({
    host: 'api.dictionaryapi.dev',
    port: 443,
    path:'/api/v2/entries/en/' + word,
    method:'GET'
  }, (res) => {
    res.setEncoding('utf8');
    res.on('data', d => {
        responseData+=d;
    })
    res.on('end',function(){
        let object = JSON.parse(responseData)
        const wordListRef = db.collection('wordlist');
        wordListRef.doc(object[0].word).set(
          object[0]
        );
       return responseData;
     });
  });
  req.end();
}

একটি ক্লাউড ফায়ারস্টোর ট্রিগার যোগ করুন

এর পরে, আপনি একটি ক্লাউড ফাংশন তৈরি করবেন যা ক্লাউড ফায়ারস্টোরে যখনই একটি নতুন নথি তৈরি করা হয় তখনই ট্রিগার হয়৷ আমরা ঠিক উপরে যে getWordDetailsFromDictionaryAPI ফাংশনটি লিখেছি তার মাধ্যমে শব্দের সংজ্ঞা পেতে এটি dictionaryapi.dev API-কে কল করবে।

index.js ফাইলে, createSpellingPracticeWord এর জন্য TODO-কে নিম্নলিখিত দিয়ে প্রতিস্থাপন করুন:

index.js

// ফায়ারস্টোর ট্রিগার যা প্রতিটি নতুন ফায়ারস্টোর নথির জন্য getWordDetailsFromDictionaryAPI এর মাধ্যমে শব্দের সংজ্ঞা নিয়ে আসে

exports.createSpellingPracticeWord = functions.firestore
  .document('wordlist/{word}')
  .onCreate((snap, context) => {
    const newValue = snap.data();
    const word = newValue.word;
    getWordDetailsFromDictionaryAPI(word);
});

গেমের জন্য শব্দের একটি তালিকা পান

আপনি একটি ক্লাউড ফাংশন লিখতে পারেন যা সহকারীর জন্য ক্লাউড ফায়ারস্টোর থেকে বানান অনুশীলন শব্দের একটি তালিকা পুনরুদ্ধার করে। এর জন্য, আমরা অ্যাপ হ্যান্ডলার ব্যবহার করি।

index.js ফাইলে, getSpellingWordList এর জন্য TODO-কে নিম্নলিখিত দিয়ে প্রতিস্থাপন করুন।

বিশেষ app.handle এ এই ফাংশন যোগ করা হল অ্যাসিস্ট্যান্ট থেকে ফাংশন অ্যাক্সেসযোগ্য করার একটি উপায়।

index.js

// Store the list of spelling words in Assistant session
app.handle('getSpellingWordList', conv => {
  const wordListRef = db.collection('wordlist').limit(50);
  const snapshot = wordListRef;

  if (snapshot.empty) {
    console.log('No matching documents.');
    return;
  }
  VocabularyList = []

  return snapshot.get().then(snapshot => {
    snapshot.forEach(doc => {
      if (doc.data().word) {
          let definition = 'unknown';
          let audio = 'unknown';
          try {
            if(doc.data().hasOwnProperty('meanings')) {
              if(doc.data().meanings[0].hasOwnProperty('definitions')) {
                  definition = doc.data().meanings[0].definitions[0].definition;
              }
            }
            if(doc.data().hasOwnProperty('phonetics')) {
              if(doc.data().phonetics.length > 0)
                audio = doc.data().phonetics[0].audio;
            }
          } catch (error) {
            console.log(error);
          }

          let obj = {
            word: doc.data().word,
            answer: doc.data().word.split("").join(" "),
            definition: definition,
            audio: audio
          }
          VocabularyList.push(obj);
      }
      // Shuffle the array
      let currentIndex = VocabularyList.length, temporaryValue, randomIndex;
      while (0 !== currentIndex) {
        randomIndex = Math.floor(Math.random() * currentIndex);
        currentIndex -= 1;
        temporaryValue = VocabularyList[currentIndex];
        VocabularyList[currentIndex] = VocabularyList[randomIndex];
        VocabularyList[randomIndex] = temporaryValue;
      }
      conv.session.params.vocabWord = VocabularyList;
      conv.session.params.vocabWordIndex = 0;
    });
  });
})

সহকারী সেশন থেকে একটি শব্দ পান

আপনি একটি ক্লাউড ফাংশন লিখতে পারেন যা শব্দ তালিকা থেকে পরবর্তী বানান শব্দটি ফেরত দেয়।

index.js ফাইলে, getSpellingWord এর জন্য TODO-কে নিম্নলিখিত দিয়ে প্রতিস্থাপন করুন:

index.js

// Returns a spelling practice word to Google Assistant and uses Speech Synthesis Markup Language (SSML) to format the response
app.handle('getSpellingWord',  conv => {
  if (!conv.session.params.vocabWord.empty) {
    conv.session.params.vocabWordIndex+=1;
    const ssml = '<speak>' +
    '<audio src="'+ conv.session.params.vocabWord[conv.session.params.vocabWordIndex].audio +'">Use phonetics to spell the word.</audio> ' +
    '</speak>';
    conv.add(ssml);
  }
  else
    conv.add('Great job! You completed the Spelling practice');
});

শব্দটি পুনরাবৃত্তি করতে গেমটি সক্ষম করুন

আপনি একটি ক্লাউড ফাংশন লিখতে পারেন যা গেমের বর্তমান শব্দের পুনরাবৃত্তি করে।

index.js ফাইলে, repeatSpellingWord জন্য TODO-কে নিম্নলিখিত দিয়ে প্রতিস্থাপন করুন:

index.js

// Returns current spelling word
app.handle('repeatSpellingWord',  conv => {
  if (!conv.session.params.vocabWord.empty) {
    const ssml = '<speak>' +
    '<audio src="'+ conv.session.params.vocabWord[conv.session.params.vocabWordIndex].audio +'">Use phonetics to spell the word. </audio> ' +
    '</speak>';
    conv.add(ssml);
  }
  else
    conv.add('Great job! You completed the Spelling practice');
});

শব্দের সংজ্ঞা পান

আপনি একটি ক্লাউড ফাংশন লিখতে পারেন যা গেমটির বর্তমান শব্দের সংজ্ঞা প্রদান করে।

index.js ফাইলে, definitionOfSpellingWord এর জন্য TODO কে নিম্নলিখিত দিয়ে প্রতিস্থাপন করুন:

index.js

// Returns spelling word definition from Assistant session parameter
app.handle('definitionOfSpellingWord',  conv => {
  conv.add( 'It means ' + conv.session.params.vocabWord[conv.session.params.vocabWordIndex].definition);
});

ব্যবহারকারীর বানান প্রতিক্রিয়া পরীক্ষা করুন

আপনি একটি ক্লাউড ফাংশন লিখতে পারেন যা গেমটির বর্তমান শব্দের বানান কিভাবে ব্যবহারকারীর প্রতিক্রিয়া যাচাই করে।

index.js ফাইলে, verifySpellingWord এর জন্য TODO-কে নিম্নলিখিত দিয়ে প্রতিস্থাপন করুন:

index.js

// Verifies user spelling response
app.handle('verifySpellingWord', conv => {
  try {
    userResponse = conv.intent.params.userresponse.resolved.join("");
    if (userResponse.toLowerCase() === conv.session.params.vocabWord[conv.session.params.vocabWordIndex].word.toLowerCase()) {
      conv.add('You are correct. Say next to continue.');
    }
    else {
      conv.add('Sorry, wrong answer. The correct answer is ' + conv.session.params.vocabWord[conv.session.params.vocabWordIndex].answer + ' . Say next to continue.');
    }
  } catch (error) {
    conv.add('Sorry. I did not understand your response' );
  }
});
exports.ActionsOnGoogleFulfillment = functions.https.onRequest(app);

আপনার সমস্ত ফাংশন স্থাপন করুন

আপনার ক্লাউড ফাংশনগুলি শুধুমাত্র ফায়ারবেসে মোতায়েন করার পরেই সক্রিয় হবে৷

spelling-functions-start ডিরেক্টরির রুট থেকে, নিম্নলিখিত কমান্ডটি চালান:

$ firebase deploy --only functions

এটি হল কনসোল আউটপুট যা আপনাকে দেখতে হবে:

i  deploying functions
i  functions: ensuring necessary APIs are enabled...
⚠  functions: missing necessary APIs. Enabling now...
i  env: ensuring necessary APIs are enabled...
⚠  env: missing necessary APIs. Enabling now...
i  functions: waiting for APIs to activate...
i  env: waiting for APIs to activate...
✔  env: all necessary APIs are enabled
✔  functions: all necessary APIs are enabled
i  functions: preparing functions directory for uploading...
i  functions: packaged functions (X.XX KB) for uploading
✔  functions: functions folder uploaded successfully
i  starting release process (may take several minutes)...
i  functions: creating function createSpellingPracticeWord(us-central1)...
✔  functions[createSpellingPracticeWord(us-central1)]: Successful create operation.
i  functions: creating function ActionsOnGoogleFulfillment(us-central1)...
✔  functions[ActionsOnGoogleFulfillment(us-central1)]: Successful create operation.

✔  Deploy complete!
Project Console: https://console.firebase.google.com/project/spelling-practice-1234/overview

পরবর্তীতে ব্যবহারের জন্য ActionsOnGoogleFulfillment ফাংশন Http এন্ডপয়েন্ট url-এর একটি নোট করুন। শেষ পয়েন্ট পেতে, ফায়ারবেস কনসোল খুলুন এবং তারপরে বানান-অনুশীলন প্রকল্পে ক্লিক করুন। ফাংশন এন্ডপয়েন্ট দেখতে ফাংশন ড্যাশবোর্ড খুলুন।

332cb0437411a242.png

আপনি সমস্ত প্রয়োজনীয় ফাংশন যোগ করা সম্পন্ন করেছেন। এখন ক্লাউড ফায়ারস্টোর সেট আপ করার দিকে এগিয়ে যাওয়া যাক।

8. ক্লাউড ফায়ারস্টোর সক্ষম করুন৷

আপনাকে ক্লাউড ফায়ারস্টোর সক্ষম করতে হবে।

Firebase কনসোলের বিল্ড বিভাগে, Firestore-এ ক্লিক করুন। তারপর, ডেটাবেস তৈরি করুন ক্লিক করুন।

5c0b4abf4410ffcf.png

ক্লাউড ফায়ারস্টোরে ডেটা অ্যাক্সেস নিরাপত্তা নিয়ম দ্বারা নিয়ন্ত্রিত হয়। শুরু করার জন্য প্রথমে আপনাকে ডেটাতে কিছু মৌলিক নিয়ম সেট করতে হবে। Firestore-এ ক্লিক করুন এবং তারপর Firebase কনসোলের নিয়ম ট্যাবে , নিম্নলিখিত নিয়মগুলি যোগ করুন, তারপর Publish-এ ক্লিক করুন।

নিম্নলিখিত নিয়মগুলি সাইন ইন করা ব্যবহারকারীদের ডেটা অ্যাক্সেস সীমাবদ্ধ করে, যা অননুমোদিত ব্যবহারকারীদের পড়তে বা লিখতে বাধা দেয়৷

rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      //
      // WARNING: These rules are insecure! We will replace them with
      // more secure rules later in the codelab
      //
      allow read, write: if request.auth != null;
    }
  }
}

9. ক্লাউড ফায়ারস্টোরে বানান শব্দের ডেটা যোগ করুন

এই ধাপে, আপনি ক্লাউড ফায়ারস্টোরে বানান শব্দের ডেটা লিখবেন যাতে আপনি সহকারী (এবং গেমের) জন্য শব্দের একটি তালিকা তৈরি করতে পারেন।

ক্লাউড ফায়ারস্টোর ডেটা সংগ্রহ, নথি, ক্ষেত্র এবং উপ-সংগ্রহের মধ্যে গঠন করা হয়। গেমের প্রতিটি শব্দ wordlist নামক শীর্ষ-স্তরের সংগ্রহে নিজস্ব নথি হিসাবে সংরক্ষণ করা হবে। ফায়ারস্টোর সংগ্রহের প্রতিটি নতুন নথির জন্য, অভিধান API পরিষেবা থেকে শব্দের বিশদ বিবরণ পেতে স্পেলিংপ্র্যাক্টিসওয়ার্ড ফাংশনটি ট্রিগার করা হবে।

একটি ক্লাউড ফায়ারস্টোর সংগ্রহ তৈরি করুন

  1. Firebase কনসোলে, Cloud Firestore বিভাগে নেভিগেট করুন।
  2. ক্লিক করুন + সংগ্রহ শুরু করুন
  3. সংগ্রহ আইডি টেক্সটবক্সে, wordlist লিখুন, তারপর পরবর্তী ক্লিক করুন।

1b4ccadb90f52f02.png

পরবর্তী, আমরা একটি শব্দের জন্য একটি নথি তৈরি করব: চুক্তি

  1. ডকুমেন্ট আইডি টেক্সটবক্সে, agreement লিখুন।
  2. ফিল্ড টেক্সটবক্সে, word লিখুন এবং মান টেক্সটবক্সে agreement লিখুন।
  3. সংরক্ষণ করুন ক্লিক করুন.

379037e011e8511e.png

আপনি যখন ক্লাউড ফায়ারস্টোরে এই নথিটি যোগ করেন, তখন এটি শব্দের সংজ্ঞার বিবরণ আনতে আপনার createSpellingPracticeWord ফাংশনকে ট্রিগার করে। প্রতিটি শব্দের জন্য একটি নতুন নথি তৈরি করে আরও শব্দ যোগ করুন (উদাহরণস্বরূপ: বিস্ময়, গাড়ি, সত্য, বলুন, ভাল, যাতায়াত, ...)।

10. Google সহকারী সেট আপ করুন৷

নিম্নলিখিত বিভাগগুলি বর্ণনা করে যে কীভাবে আপনার Google অ্যাসিস্ট্যান্ট ডেভেলপমেন্ট এনভায়রনমেন্ট সেট আপ করবেন এবং আপনার অ্যাকশন প্রকল্প তৈরি করবেন।

আপনার Google অনুমতি সেটিংস পরীক্ষা করুন

এই কোডল্যাবে আপনি যে অ্যাকশন তৈরি করেছেন তা পরীক্ষা করতে, আপনাকে প্রয়োজনীয় অনুমতিগুলি সক্ষম করতে হবে যাতে সিমুলেটর আপনার অ্যাকশন অ্যাক্সেস করতে পারে। অনুমতি সক্ষম করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. কার্যকলাপ নিয়ন্ত্রণ পৃষ্ঠায় যান।
  2. আপনার Google অ্যাকাউন্ট দিয়ে সাইন ইন করুন, যদি আপনি ইতিমধ্যে এটি না করে থাকেন।
  3. নিম্নলিখিত অনুমতিগুলি সক্রিয় করুন:
  • ওয়েব এবং অ্যাপ কার্যকলাপ
  • ওয়েব এবং অ্যাপ অ্যাক্টিভিটির অধীনে, Google পরিষেবাগুলি ব্যবহার করে এমন সাইট, অ্যাপ এবং ডিভাইস থেকে Chrome ইতিহাস এবং কার্যকলাপ অন্তর্ভুক্ত করুন এর পাশের চেকবক্সটি নির্বাচন করুন।

c988e1e639e6d6e1.png

একটি অ্যাকশন প্রকল্প তৈরি করুন

আপনার অ্যাকশন প্রকল্প আপনার অ্যাকশনের জন্য একটি ধারক। এই কোডল্যাবের জন্য আপনার অ্যাকশন প্রকল্প তৈরি করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. অ্যাকশন কনসোল খুলুন।
  2. নতুন প্রকল্প ক্লিক করুন.
  3. পরিষেবার শর্তাবলী গ্রহণ করুন

b174d45710b8086b.png

  1. spelling-practice-codelab টাইপ করুন বা নির্বাচন করুন যা আপনি ফায়ারবেস কনসোল ব্যবহার করে তৈরি করেছেন। (নামটি আপনার অভ্যন্তরীণ রেফারেন্সের জন্য। পরে, আপনি আপনার প্রকল্পের জন্য একটি বাহ্যিক নাম সেট করতে পারেন।)

a2951de5d2001fac.png

  1. আমদানি প্রকল্প ক্লিক করুন.
  2. আপনি কি ধরনের অ্যাকশন তৈরি করতে চান? স্ক্রীন, কাস্টম কার্ড নির্বাচন করুন।
  3. পরবর্তী ক্লিক করুন.
  4. ফাঁকা প্রকল্প কার্ড নির্বাচন করুন.
  5. বিল্ডিং শুরু করুন ক্লিক করুন।
  6. প্রদর্শন নামের জন্য বানান অনুশীলন লিখুন এবং সংরক্ষণ ক্লিক করুন।

ব্যবহারকারীরা আমন্ত্রণের মাধ্যমে আপনার অ্যাকশনের সাথে কথোপকথন শুরু করে। উদাহরণস্বরূপ, ব্যবহারকারীরা "Hey Google, বানান অনুশীলনের সাথে কথা বলুন" এর মত একটি বাক্যাংশ বলে আপনার ক্রিয়াকে আহ্বান করতে পারেন, যেখানে বানান অনুশীলন হল প্রদর্শনের নাম৷

আপনার অ্যাকশনের একটি প্রদর্শন নাম থাকতে হবে যদি আপনি এটিকে উৎপাদনে স্থাপন করতে চান; যাইহোক, আপনার অ্যাকশন পরীক্ষা করতে, আপনাকে ডিসপ্লে নামটি সংজ্ঞায়িত করতে হবে না। পরিবর্তে, আপনি আপনার অ্যাকশনের জন্য সিমুলেটরে "টক টু মাই টেস্ট অ্যাপ" বাক্যাংশটি ব্যবহার করতে পারেন।

পূর্ণতা কনফিগার করুন

আপনি এই কোডল্যাবে আগে যে ক্লাউড ফাংশনগুলি লিখেছেন এবং স্থাপন করেছেন তার জন্য আপনাকে সহকারীর সাথে ইভেন্ট হ্যান্ডলারের সাথে সংযোগ করতে হবে৷

আপনার পূর্ণতা কনফিগার করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. পাশের নেভিগেশনে ওয়েবহুকে ক্লিক করুন।
  2. পূরণের বিকল্প হিসাবে Https এন্ডপয়েন্ট নির্বাচন করুন:

d523bf003e96e66f.png

  1. HTTPs এন্ডপয়েন্ট টেক্সটবক্সে আপনার ফাংশনের এন্ডপয়েন্টের URL লিখুন, তারপর Save এ ক্লিক করুন।

be53e2cd0d914d54.png

পরবর্তী বিভাগে, আপনি অ্যাকশন কনসোলে আপনার প্রধান আহ্বানের জন্য প্রম্পটটি কাস্টমাইজ করবেন।

প্রধান আহ্বান সেট আপ করুন

একজন ব্যবহারকারী আপনার অ্যাকশন আহ্বান করার পরে কী ঘটবে তা নির্ধারণ করতে আপনাকে অবশ্যই প্রধান আহ্বান সম্পাদনা করতে হবে।

ডিফল্টরূপে, অ্যাকশন বিল্ডার একটি জেনেরিক প্রম্পট প্রদান করে যখন আপনার আহ্বান ট্রিগার হয় ( "প্রধান আহ্বান সংজ্ঞায়িত করে আপনার অ্যাকশন তৈরি করা শুরু করুন।")।

আপনার অ্যাকশন ব্যবহারকারীর কাছে যে প্রম্পটটি ফেরত পাঠায় তা পরিবর্তন করতে, যখন তারা আপনার অ্যাকশন শুরু করে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে প্রধান আহ্বানে ক্লিক করুন।

9ff088c04c995cde.png

  1. Call your webhook চেক করুন এবং পাঠ্যবক্সে ইভেন্ট হ্যান্ডলারের নাম getSpellingWordList যোগ করুন।
  2. কোড এডিটরে, speech ক্ষেত্রের পাঠ্যটিকে নিম্নলিখিত স্বাগত বার্তা দিয়ে প্রতিস্থাপন করুন: Welcome to Spelling Practice

দ্রষ্টব্য: আপনি আপনার প্রম্পট সম্পাদনা করতে YAML বা JSON ফর্ম্যাটিং ব্যবহার করতে পারেন।

  1. সংরক্ষণ করুন ক্লিক করুন.

সিমুলেটরে প্রধান আহ্বান পরীক্ষা করুন

অ্যাকশন কনসোল আপনার অ্যাকশন পরীক্ষা করার জন্য একটি ওয়েব টুল সরবরাহ করে যাকে সিমুলেটর বলা হয়। ইন্টারফেসটি হার্ডওয়্যার ডিভাইস এবং তাদের সেটিংস অনুকরণ করে, যাতে আপনি আপনার অ্যাকশনের সাথে কথোপকথন করতে পারেন যেন এটি একটি স্মার্ট ডিসপ্লে, ফোন, স্পিকার বা KaiOS-এ চলছে।

সিমুলেটরে আপনার অ্যাকশনের মূল আহ্বান পরীক্ষা করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. উপরের নেভিগেশন বারে, সিমুলেটরে যেতে টেস্টে ক্লিক করুন।
  2. সিমুলেটরে আপনার অ্যাকশন চালু করতে, উপরের বাম দিকে ইনপুট ক্ষেত্রে Talk to Spelling Practice টাইপ করুন, তারপর আপনার কীবোর্ডে এন্টার টিপুন।

651fc8da1ac9aa0a.png

আপনি যখন আপনার অ্যাকশনের মূল আহ্বান ট্রিগার করেন, তখন সহকারী আপনার কাস্টমাইজড স্বাগত বার্তার সাথে প্রতিক্রিয়া জানায়। এই মুহুর্তে, সহকারী অভিবাদনের সাথে সাড়া দেওয়ার পরে কথোপকথন শেষ হয়।

ইভেন্ট লগ দেখুন

আপনি যখন টেস্ট ট্যাবে থাকেন, ডানদিকের প্যানেলটি ইভেন্ট লগগুলি দেখায়, যা ইভেন্ট লগ হিসাবে কথোপকথনের ইতিহাস প্রদর্শন করে৷ প্রতিটি ইভেন্ট লগ কথোপকথনের সেই মোড়ের সময় ঘটে যাওয়া ঘটনাগুলি প্রদর্শন করে৷ ইভেন্ট লগ দেখতে ইভেন্টের আগে ধূসর আইকনে ক্লিক করুন।

আপনার অ্যাকশনে বর্তমানে একটি ইভেন্ট লগ রয়েছে, যা ব্যবহারকারীর ইনপুট ( "বানান অনুশীলনের সাথে কথা বলুন" ) এবং আপনার অ্যাকশনের প্রতিক্রিয়া উভয়ই দেখায়৷ নিম্নলিখিত স্ক্রিনশটটি আপনার অ্যাকশনের ইভেন্ট লগ দেখায়:

a6fb192f94426824.png

11. বানান অনুশীলনের জন্য কথোপকথন তৈরি করুন

এখন যেহেতু আপনি সংজ্ঞায়িত করেছেন একজন ব্যবহারকারী আপনার অ্যাকশন আহ্বান করার পরে কী ঘটবে, আপনি আপনার অ্যাকশনের বাকি কথোপকথন তৈরি করতে পারেন। বানান অনুশীলনের চারটি দৃশ্য রয়েছে এবং এটি চালানোর আগে আপনাকে অবশ্যই প্রতিটি দৃশ্য সক্রিয় করতে হবে। একটি দৃশ্য সক্রিয় করার সবচেয়ে সাধারণ উপায় হল আপনার অ্যাকশন কনফিগার করা যাতে, যখন একজন ব্যবহারকারী একটি দৃশ্যের মধ্যে একটি ব্যবহারকারীর অভিপ্রায়ের সাথে মেলে, সেই অভিপ্রায়টি অন্য দৃশ্যে রূপান্তরকে ট্রিগার করে এবং এটি সক্রিয় করে।

মূল আহ্বান থেকে শুরুর দৃশ্যে রূপান্তর

এই বিভাগে, আপনি Start নামে একটি নতুন দৃশ্য তৈরি করেন, যা ব্যবহারকারীকে একটি প্রম্পট পাঠায় যে তারা বানান অনুশীলন শুরু করতে চান কিনা। আপনি মূল আহ্বান থেকে নতুন Start দৃশ্যে একটি রূপান্তর যোগ করুন।

এই দৃশ্য তৈরি করতে এবং এতে একটি রূপান্তর যোগ করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. উপরের নেভিগেশনে বিকাশে ক্লিক করুন। তারপরে, বাম নেভিগেশনে প্রধান আহ্বানে ক্লিক করুন।
  2. ডানদিকে ট্রানজিশন বিভাগে, ড্রপ-ডাউন মেনুতে ক্লিক করুন, তারপর টেক্সট ফিল্ডে Start টাইপ করুন।

dd4f1807a57f794d.png

  1. যোগ করুন ক্লিক করুন. এটি Start নামক একটি দৃশ্য তৈরি করে এবং অ্যাকশন ব্যবহারকারীকে স্বাগত প্রম্পট সরবরাহ করার পরে অ্যাকশনকে Start দৃশ্যে রূপান্তর করতে বলে।
  2. দৃশ্যের তালিকা দেখাতে বাম নেভিগেশনে দৃশ্যে ক্লিক করুন।
  3. দৃশ্যের অধীনে, Start দৃশ্য দেখতে স্টার্ট ক্লিক করুন।
  4. Start দৃশ্যের অন এন্টার বিভাগে + ক্লিক করুন।
  5. প্রম্পট পাঠান নির্বাচন করুন।
  6. speech ক্ষেত্রে বাক্যটি প্রতিস্থাপন করুন ( Enter the response that users will see or hear... ) ব্যবহারকারীকে জিজ্ঞাসা করার জন্য একটি প্রশ্ন সহ: Use phonetic alphabet to spell the word. For example alpha for a, bravo for b, charlie for c etc. Do you want to continue?

সাজেশন চিপ ব্যবহারকারীর জন্য ক্লিকযোগ্য পরামর্শ অফার করে যা আপনার অ্যাকশন ব্যবহারকারীর ইনপুট হিসাবে প্রক্রিয়া করে। এই বিভাগে, আপনি সাজেশন চিপ যোগ করেন যা আপনি এইমাত্র কনফিগার করা প্রম্পটের নীচে প্রদর্শিত হয় ( Do you want to play

Spelling Practice

? ) স্ক্রিন সহ ডিভাইসে ব্যবহারকারীদের সমর্থন করতে।

Start দৃশ্যের প্রম্পটে পরামর্শ চিপ যোগ করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. Start সিনে, কোড এডিটরের নিচে সাজেশনে ক্লিক করুন। এই ক্রিয়াটি একটি একক পরামর্শ চিপ যোগ করে।
  2. title ক্ষেত্রে, 'Yes' দিয়ে Suggested Response প্রতিস্থাপন করুন।
  3. একই বিন্যাস ব্যবহার করে, ম্যানুয়ালি 'No' এবং 'Help with Phonetics' শিরোনামের একটি পরামর্শ চিপ যোগ করুন। আপনার কোড নিম্নলিখিত স্নিপেট মত হওয়া উচিত:
  4. সংরক্ষণ করুন ক্লিক করুন.

5ff2ecdc56801b91.png

সিমুলেটরে আপনার অ্যাকশন পরীক্ষা করুন

এই মুহুর্তে, আপনার অ্যাকশনটি মূল আহ্বান থেকে শুরুর দৃশ্যে স্থানান্তর করা উচিত এবং ব্যবহারকারীকে জিজ্ঞাসা করা উচিত যে তারা চালিয়ে যেতে চান কিনা। সিমুলেটেড ডিসপ্লেতে সাজেশন চিপগুলিও উপস্থিত হওয়া উচিত।

সিমুলেটরে আপনার ক্রিয়া পরীক্ষা করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. ন্যাভিগেশন বারে, আপনাকে সিমুলেটরে নিয়ে যেতে টেস্টে ক্লিক করুন।
  2. সিমুলেটরে আপনার ক্রিয়া পরীক্ষা করতে, ইনপুট ক্ষেত্রে Talk to Spelling Practice করুন।
  3. এন্টার চাপুন . আপনার অ্যাকশন Main invocation প্রম্পট এবং যোগ করা Start সিন প্রম্পটের সাথে সাড়া দেওয়া উচিত, "বানান অনুশীলনে স্বাগতম। শব্দের বানান করতে ফোনেটিক বর্ণমালা ব্যবহার করুন। উদাহরণস্বরূপ a এর জন্য আলফা, b এর জন্য ব্রাভো, c এর জন্য চার্লি ইত্যাদি। আপনি কি চান? চালিয়ে যান?" .

নিম্নলিখিত স্ক্রিনশট এই মিথস্ক্রিয়া দেখায়:

338c9570b02a618e.png

  1. প্রম্পটে প্রতিক্রিয়া জানাতে Yes বা No বা Help with Phonetics । (এছাড়াও আপনি "হ্যাঁ" বা "না" বা "ফোনেটিক্সে সহায়তা" বলতে পারেন বা ইনপুট ক্ষেত্রে Yes বা No বা Help with Phonetics লিখতে পারেন।)

আপনি যখন প্রম্পটে সাড়া দেন, তখন আপনার অ্যাকশন একটি বার্তার সাথে প্রতিক্রিয়া জানায় যে এটি আপনার ইনপুট বুঝতে পারে না: "দুঃখিত, আমি এটি ধরতে পারিনি। আপনি আবার চেষ্টা করতে পারেন?" যেহেতু আপনি এখনও "হ্যাঁ" বা "না" ইনপুট বোঝার এবং প্রতিক্রিয়া জানাতে আপনার অ্যাকশন কনফিগার করেননি, তাই আপনার অ্যাকশন আপনার ইনপুটের সাথে NO_MATCH উদ্দেশ্যের সাথে মেলে।

ডিফল্টরূপে, NO_MATCH সিস্টেমের অভিপ্রায় জেনেরিক প্রতিক্রিয়া প্রদান করে, তবে আপনি ব্যবহারকারীকে নির্দেশ করতে এই প্রতিক্রিয়াগুলি কাস্টমাইজ করতে পারেন যে আপনি তাদের ইনপুট বুঝতে পারেন নি। তিনবার ব্যবহারকারীর ইনপুট মেলে না বলে সহকারী আপনার অ্যাকশনের সাথে ব্যবহারকারীর কথোপকথন শেষ করে।

না এবং ধ্বনিতত্ত্বের অভিপ্রায় যোগ করুন

এখন যেহেতু ব্যবহারকারীরা আপনার অ্যাকশন পোজ করা প্রশ্নের উত্তর দিতে পারে, আপনি ব্যবহারকারীদের প্রতিক্রিয়া বোঝার জন্য আপনার অ্যাকশন কনফিগার করতে পারেন ( "হ্যাঁ" বা "না" বা "ফোনেটিক্সে সহায়তা" )। নিম্নলিখিত বিভাগে, আপনি ব্যবহারকারীর অভিপ্রায়গুলি তৈরি করেন যা ব্যবহারকারী যখন "হ্যাঁ" বা "না" বা "ফোনেটিক্সে সাহায্য করুন" বলে তখন মিলে যায় এবং এই ইন্টেন্টগুলি Start দৃশ্যে যোগ করুন। আমরা সিস্টেম ইন্টেন্ট yes ব্যবহার করব এবং অন্যান্য ইন্টেন্ট তৈরি করব।

no অভিপ্রায় তৈরি করবেন না

এখন, ব্যবহারকারীরা যখন গেমটি খেলতে চায় না তখন আপনাকে বোঝার এবং প্রতিক্রিয়া জানানোর no উদ্দেশ্য তৈরি করতে হবে। এই অভিপ্রায় তৈরি করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বিকাশে ক্লিক করুন।
  2. ইন্টেন্টের তালিকা খুলতে নেভিগেশনে কাস্টম ইন্টেন্টে ক্লিক করুন।
  3. ইন্টেন্টের তালিকার শেষে + (প্লাস সাইন) ক্লিক করুন। নতুন অভিপ্রায় no নাম দিন এবং এন্টার টিপুন।
  4. no ইন্টেন্ট পেজ খুলতে নো ক্লিক করুন।
  5. প্রশিক্ষণ বাক্যাংশ যোগ করুন বিভাগে, বাক্যাংশ লিখুন পাঠ্য বাক্সে ক্লিক করুন এবং নিম্নলিখিত বাক্যাংশগুলি লিখুন:
  • No
  • N
  • I don't want
  • nope

98b0c9a7b67ea9b9.png

  1. সংরক্ষণ করুন ক্লিক করুন.

Start দৃশ্যে কোন অভিপ্রায় যোগ করবেন no

এখন, অ্যাকশন বুঝতে পারে যখন একজন ব্যবহারকারী "না" বা "না" এর মত কিছু প্রকাশ করছে, যেমন "না" । আপনাকে Start দৃশ্যে ব্যবহারকারীর no অভিপ্রায় যোগ করতে হবে কারণ ব্যবহারকারী Start প্রম্পটে সাড়া দিচ্ছেন (" বানান অনুশীলনে স্বাগতম। শব্দের বানান করতে ফোনেটিক বর্ণমালা ব্যবহার করুন। উদাহরণস্বরূপ a-এর জন্য আলফা, b-এর জন্য bravo, c-এর জন্য চার্লি) আপনি কি চালিয়ে যেতে চান?" )

Start দৃশ্যের জন্য এই অভিপ্রায় যোগ করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশন শুরু দৃশ্য ক্লিক করুন.
  2. ব্যবহারকারীর অভিপ্রায় পরিচালনার পাশে Start সিনে + (প্লাস চিহ্ন) ক্লিক করুন।
  3. অভিপ্রায় বিভাগে, ড্রপ-ডাউনে না নির্বাচন করুন।

51f752e78c8b4942.png

  1. প্রম্পট পাঠান ক্লিক করুন এবং নিম্নলিখিত পাঠ্য সহ speech ক্ষেত্র আপডেট করুন: Good Bye

আপনার সম্পাদকের কোডটি নিম্নলিখিত স্নিপেটের মতো হওয়া উচিত:

candidates:
  - first_simple:
      variants:
        - speech: >-
             Goodbye.
  1. ট্রানজিশন বিভাগে, ড্রপডাউন থেকে কথোপকথন শেষ করুন নির্বাচন করুন।
  2. সংরক্ষণ করুন ক্লিক করুন.

সিমুলেটরে no উদ্দেশ্য পরীক্ষা করবেন না

এই মুহুর্তে, আপনার অ্যাকশন বুঝতে পারে যখন ব্যবহারকারী গেমটি খেলতে চায় না এবং উপযুক্ত প্রতিক্রিয়া ফেরত দেয়।

সিমুলেটরে এই অভিপ্রায় পরীক্ষা করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশন বারে, টেস্টে ক্লিক করুন।
  2. ইনপুট ক্ষেত্রে Talk to Spelling Practice টাইপ করুন এবং Enter টিপুন।
  3. ইনপুট ক্ষেত্রে No টাইপ করুন এবং এন্টার টিপুন। বিকল্পভাবে, No সাজেশন চিপে ক্লিক করুন।

7727a456b522f31b.png

Start দৃশ্যে সিস্টেম YES অভিপ্রায় যোগ করুন

এখন, আমরা Start দৃশ্যে সিস্টেমের অভিপ্রায় "হ্যাঁ" যোগ করব, যেহেতু ব্যবহারকারী Start প্রম্পটে হ্যাঁ উত্তর দিচ্ছেন (" বানান অনুশীলনে স্বাগতম। শব্দের বানান করতে ফোনেটিক বর্ণমালা ব্যবহার করুন। উদাহরণস্বরূপ a-এর জন্য আলফা, এর জন্য bravo) b, c ইত্যাদির জন্য চার্লি। আপনি কি চালিয়ে যেতে চান?" )।

Start দৃশ্যে এই ব্যবহারকারীর অভিপ্রায় যোগ করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশন শুরু দৃশ্য ক্লিক করুন.
  2. ব্যবহারকারীর অভিপ্রায় পরিচালনার পাশে Start দৃশ্যে + (প্লাস চিহ্ন) ক্লিক করুন।
  3. সমস্ত সিস্টেম ইন্টেন্টের অধীনে, অভিপ্রায় ড্রপ-ডাউনে হ্যাঁ নির্বাচন করুন।

f6cbe789cde49e8f.png

  1. আপনার ওয়েবহুককে কল করুন ক্লিক করুন এবং event handler টেক্সটবক্স আপনার আগে তৈরি করা ফাংশনটির সাথে আপডেট করুন: getSpellingWordList
  2. ট্রানজিশন বিভাগে, ড্রপ-ডাউনে ক্লিক করুন এবং কথোপকথন শেষ করুন নির্বাচন করুন।
  3. সংরক্ষণ করুন ক্লিক করুন.

সিমুলেটরে YES অভিপ্রায় পরীক্ষা করুন

এই মুহুর্তে, আপনার অ্যাকশন বুঝতে পারে যে ব্যবহারকারী কখন গেম খেলতে চায় এবং উপযুক্ত প্রতিক্রিয়া ফেরত দেয়।

সিমুলেটরে এই অভিপ্রায় পরীক্ষা করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশন বারে, টেস্টে ক্লিক করুন।
  2. সিমুলেটরে আপনার অ্যাকশন পরীক্ষা করতে, ইনপুট ফিল্ডে Talk to Spelling Practice টাইপ করুন এবং এন্টার টিপুন।
  3. ইনপুট ক্ষেত্রে Yes টাইপ করুন এবং এন্টার টিপুন। বিকল্পভাবে, Yes পরামর্শ চিপে ক্লিক করুন।

আপনার অ্যাকশন সমস্ত বানান অনুশীলন শব্দের একটি তালিকা নিয়ে আসে এবং সেগুলিকে সেশনে সংরক্ষণ করে। আপনার অ্যাকশন তারপর সেশনটি শেষ করে কারণ আপনি YES অভিপ্রায়ের জন্য End conversation রূপান্তর নির্বাচন করেছেন৷

Phonetics অভিপ্রায় তৈরি করুন

Phonetics অভিপ্রায় তৈরি করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বিকাশে ক্লিক করুন।
  2. ইন্টেন্টের তালিকা খুলতে নেভিগেশনে কাস্টম ইন্টেন্টে ক্লিক করুন।
  3. ইন্টেন্টের তালিকার শেষে + (প্লাস সাইন) ক্লিক করুন। নতুন অভিপ্রায়ের phonetics নাম দিন এবং Enter টিপুন।
  4. phonetics অভিপ্রায় পৃষ্ঠা খুলতে phonetics ইন্টেন্টে ক্লিক করুন।
  5. প্রশিক্ষণ বাক্যাংশ যোগ করুন বিভাগে, বাক্যাংশ লিখুন পাঠ্য বাক্সে ক্লিক করুন এবং নিম্নলিখিত বাক্যাংশগুলি লিখুন:
  • how do I spell words
  • phonetics
  • help me with phonetics
  • phonetic alphabet

1455bdfca8dae46.png

  1. সংরক্ষণ করুন ক্লিক করুন.

Start দৃশ্যে phonetics অভিপ্রায় যোগ করুন

এখন, অ্যাকশন বুঝতে পারে যখন একজন ব্যবহারকারী একটি "ধ্বনিতত্ত্ব" অভিপ্রায় প্রকাশ করছে। আপনি Start দৃশ্যে phonetics ব্যবহারকারীর অভিপ্রায় যোগ করতে পারেন, যেহেতু ব্যবহারকারী Start প্রম্পটে সাড়া দিচ্ছেন (" বানান অনুশীলনে স্বাগতম। শব্দের বানান করতে ফোনেটিক বর্ণমালা ব্যবহার করুন। উদাহরণস্বরূপ a-এর জন্য আলফা, b-এর জন্য bravo, c-এর জন্য চার্লি) আপনি কি চালিয়ে যেতে চান?" )

Start দৃশ্যে এই ব্যবহারকারীর অভিপ্রায় যোগ করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশন শুরু দৃশ্য ক্লিক করুন.
  2. ব্যবহারকারীর অভিপ্রায় পরিচালনার পাশে Start সিনে + (প্লাস চিহ্ন) ক্লিক করুন।
  3. অভিপ্রায় ড্রপ-ডাউনে ধ্বনিতত্ত্ব নির্বাচন করুন।

67ee2e08000b2aee.png

  1. ট্রানজিশন বিভাগে, ড্রপ-ডাউনে ক্লিক করুন এবং কথোপকথন শেষ করুন নির্বাচন করুন।
  2. সংরক্ষণ করুন ক্লিক করুন.

শুরুর দৃশ্য থেকে বানান দৃশ্যে রূপান্তর

এই বিভাগে, আপনি বানান নামে একটি নতুন দৃশ্য তৈরি করেন, যা ধ্বনিগত বর্ণমালা ব্যবহার করে শব্দটি বানান করার জন্য ব্যবহারকারীকে একটি প্রম্পট পাঠায়।

এই দৃশ্য তৈরি করতে এবং এতে একটি রূপান্তর যোগ করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. উপরের নেভিগেশনে বিকাশে ক্লিক করুন। তারপরে, বাম নেভিগেশনে দৃশ্য শুরু করুন ক্লিক করুন।
  2. ব্যবহারকারীর অভিপ্রায় হ্যান্ডলিং বিভাগে ক্লিক করুন when actions.intent.YES is matched এবং ট্রানজিশন বিভাগে ডানদিকে, ড্রপ-ডাউন মেনুতে ক্লিক করুন এবং পাঠ্য ক্ষেত্রে Spelling টাইপ করুন।
  3. যোগ করুন ক্লিক করুন. এটি Spelling নামক একটি দৃশ্য তৈরি করে এবং হ্যাঁ অভিপ্রায়ের সাথে মিলের পরে Spelling দৃশ্যে রূপান্তর করতে অ্যাকশনকে বলে।
  4. দৃশ্যের তালিকা দেখাতে বাম নেভিগেশনে দৃশ্যগুলি প্রসারিত করুন।
  5. দৃশ্যের অধীনে, Spelling দৃশ্য দেখতে বানান ক্লিক করুন।
  6. Spelling দৃশ্যের অন এন্টার বিভাগে + ক্লিক করুন।
  7. আপনার ওয়েবহুকে কল করুন ক্লিক করুন এবং ইভেন্ট হ্যান্ডলার টেক্সটবক্সে getSpellingWord লিখুন।
  8. প্রম্পট পাঠান নির্বাচন করুন।
  9. speech ক্ষেত্রে বাক্যটি প্রতিস্থাপন করুন ( Enter the response that users will see or hear... ) {} দিয়ে। প্রকৃত প্রম্পট ওয়েবহুক দ্বারা পপুলেট করা হবে।

সাজেশন চিপ ব্যবহারকারীর জন্য ক্লিকযোগ্য পরামর্শ অফার করে যা আপনার অ্যাকশন ব্যবহারকারীর ইনপুট হিসাবে প্রক্রিয়া করে।

Spelling দৃশ্যের প্রম্পটে পরামর্শ চিপ যোগ করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. Spelling দৃশ্যে, কোড এডিটরের নিচে সাজেশনে ক্লিক করুন। এই ক্রিয়াটি তিনটি পরামর্শ চিপ যোগ করে।
  2. title ক্ষেত্রে, 'Repeat' দিয়ে Suggested Response প্রতিস্থাপন করুন।
  3. একই ফরম্যাটিং ব্যবহার করে, ম্যানুয়ালি 'Skip' শিরোনামের একটি পরামর্শ চিপ যোগ করুন।
  4. একই বিন্যাস ব্যবহার করে, ম্যানুয়ালি 'Quit' শিরোনামের একটি পরামর্শ চিপ যোগ করুন। আপনার কোড নিম্নলিখিত স্নিপেট মত হওয়া উচিত:
  5. সংরক্ষণ করুন ক্লিক করুন.
suggestions:
      - title: 'Repeat'
      - title: 'Skip'
      - title: 'Quit'

e1d437f714ea1539.png

Repeat অভিপ্রায় তৈরি করুন

repeat অভিপ্রায় তৈরি করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বিকাশে ক্লিক করুন।
  2. ইন্টেন্টের তালিকা খুলতে নেভিগেশনে কাস্টম ইন্টেন্টে ক্লিক করুন।
  3. ইন্টেন্টের তালিকার শেষে + (প্লাস সাইন) ক্লিক করুন। নতুন repeat নাম দিন এবং Enter টিপুন।
  4. definition অভিপ্রায় পৃষ্ঠা খুলতে repeat অভিপ্রায় ক্লিক করুন.
  5. প্রশিক্ষণ বাক্যাংশ যোগ করুন বিভাগে, বাক্যাংশ লিখুন পাঠ্য বাক্সে ক্লিক করুন এবং নিম্নলিখিত বাক্যাংশগুলি লিখুন:
  • one more time please
  • say the word again
  • repeat the word
  • tell me again
  • repeat

e61f0b9f80510bc9.png

  1. সংরক্ষণ করুন ক্লিক করুন.

Spelling দৃশ্যে repeat অভিপ্রায় যোগ করুন

এখন, অ্যাকশন বুঝতে পারে যখন একজন ব্যবহারকারী একটি "পুনরাবৃত্তি" অভিপ্রায় প্রকাশ করছে। আপনি Spelling দৃশ্যে repeat ব্যবহারকারীর অভিপ্রায় যোগ করতে পারেন, যেহেতু ব্যবহারকারী Spelling প্রম্পটে সাড়া দিচ্ছেন (" ফোনেটিক বর্ণমালা ব্যবহার করে শব্দটি বানান ")।

Spelling দৃশ্যে এই ব্যবহারকারীর অভিপ্রায় যোগ করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বানান দৃশ্যে ক্লিক করুন।
  2. ব্যবহারকারীর অভিপ্রায় পরিচালনার পাশে Spelling দৃশ্যে + (প্লাস চিহ্ন) ক্লিক করুন।
  3. অভিপ্রায় ড্রপ-ডাউনে পুনরাবৃত্তি নির্বাচন করুন।

5cfd623b25bedbed.png

  1. আপনার ওয়েবহুকে কল করুন এবং শব্দের সংজ্ঞা পেতে ইভেন্ট হ্যান্ডলার টেক্সটবক্সে পুনরাবৃত্তি করুন
  2. প্রম্পট পাঠান চেক করুন।
  3. speech ক্ষেত্রে বাক্যটি প্রতিস্থাপন করুন ( Enter the response that users will see or hear... ) '' দিয়ে। প্রকৃত প্রম্পট ওয়েবহুক দ্বারা পপুলেট করা হবে।

"যখন পুনরাবৃত্তি মেলে"-তে পরামর্শ চিপ যোগ করুন

  1. ব্যবহারকারীর অভিপ্রায় পরিচালনার অধীনে " যখন পুনরাবৃত্তি মিলিত হয় "-এ, কোড সম্পাদকের নীচে পরামর্শগুলিতে ক্লিক করুন৷ এই ক্রিয়াটি তিনটি পরামর্শ চিপ যোগ করে।
  2. title ক্ষেত্রে, Suggested Response 'Skip' দিয়ে প্রতিস্থাপন করুন।
  3. একই ফরম্যাটিং ব্যবহার করে, ম্যানুয়ালি 'Quit' শিরোনামে একটি পরামর্শ চিপ যোগ করুন। আপনার কোডটি নিম্নলিখিত স্নিপেটের মতো হওয়া উচিত:
suggestions:
      - title: 'Skip'
      - title: 'Quit'

ab40e4b0c432b97c.png

  1. Save এ ক্লিক করুন।

definition অভিপ্রায় তৈরি করুন

definition উদ্দেশ্য তৈরি করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বিকাশে ক্লিক করুন।
  2. ইন্টেন্টের তালিকা খুলতে নেভিগেশনে কাস্টম ইন্টেন্টে ক্লিক করুন।
  3. ইন্টেন্টের তালিকার শেষে + (প্লাস সাইন) ক্লিক করুন। নতুন উদ্দেশ্য definition নাম দিন এবং Enter টিপুন।
  4. definition অভিপ্রায় পৃষ্ঠা খুলতে definition অভিপ্রায় ক্লিক করুন.
  5. প্রশিক্ষণ বাক্যাংশ যোগ করুন বিভাগে, বাক্যাংশ লিখুন পাঠ্য বাক্সে ক্লিক করুন এবং নিম্নলিখিত বাক্যাংশগুলি লিখুন:
  • I would like to know the definition
  • tell me the definition
  • what does it mean
  • meaning
  • definition
  • what is the definition?

c1b88a9c0b1ac082.png

  1. সংরক্ষণ করুন ক্লিক করুন.

Spelling দৃশ্যে definition অভিপ্রায় যোগ করুন

এখন, অ্যাকশন বুঝতে পারে যখন একজন ব্যবহারকারী একটি "সংজ্ঞা" অভিপ্রায় প্রকাশ করছে। আপনি Spelling দৃশ্যে definition ব্যবহারকারীর অভিপ্রায় যোগ করতে পারেন, যেহেতু ব্যবহারকারী Spelling প্রম্পটে সাড়া দিচ্ছেন (" ফোনেটিক বর্ণমালা ব্যবহার করে শব্দটি বানান ")।

Spelling দৃশ্যে এই ব্যবহারকারীর অভিপ্রায় যোগ করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বানান দৃশ্যে ক্লিক করুন।
  2. ব্যবহারকারীর অভিপ্রায় পরিচালনার পাশে Spelling দৃশ্যে + (প্লাস চিহ্ন) ক্লিক করুন।
  3. অভিপ্রায় ড্রপ-ডাউনে সংজ্ঞা নির্বাচন করুন।

646BDCAC3AD3EB0C.PNG

  1. আপনার ওয়েবহুক কলটি দেখুন এবং শব্দের সংজ্ঞা পেতে ইভেন্ট হ্যান্ডলার টেক্সটবক্সে সংজ্ঞাফেলিংওয়ার্ড লিখুন।
  2. প্রম্পট প্রেরণ করুন চেক করুন।
  3. speech ফিল্ডে বাক্যটি প্রতিস্থাপন করুন ( Enter the response that users will see or hear... ) '`দিয়ে)` প্রকৃত প্রম্পটটি ওয়েবহুক দ্বারা জনবহুল হবে।

ওয়েবহুক প্রতিক্রিয়াতে পরামর্শ চিপগুলি যুক্ত করুন

  1. Start দৃশ্যে কোড সম্পাদকের নীচে পরামর্শগুলি ক্লিক করুন। এই ক্রিয়াটি তিনটি পরামর্শ চিপ যুক্ত করে।
  2. title ক্ষেত্রে, Suggested Response 'Skip' দিয়ে প্রতিস্থাপন করুন।
  3. একই ফর্ম্যাটিং ব্যবহার করে, ম্যানুয়ালি 'Quit' শিরোনামে একটি পরামর্শ চিপ যুক্ত করুন our আপনার কোডটি নিম্নলিখিত স্নিপেটের মতো দেখতে হবে:
suggestions:
      - title: 'Skip'
      - title: 'Quit'

25227545839d933f.png

  1. সংরক্ষণ করুন ক্লিক করুন.

skip অভিপ্রায় তৈরি করুন

skip অভিপ্রায় তৈরি করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বিকাশ ক্লিক করুন।
  2. উদ্দেশ্যগুলির তালিকা খুলতে নেভিগেশনে ইন্টেন্টস ক্লিক করুন।
  3. উদ্দেশ্যগুলির তালিকা শেষে + (প্লাস সাইন) ক্লিক করুন। নতুন ইন্টেন্ট skip যান এবং Enter টিপুন।
  4. skip ইন্টেন্ট পৃষ্ঠাটি খুলতে skip অভিপ্রায়টি ক্লিক করুন।
  5. যুক্ত প্রশিক্ষণ বাক্যাংশ বিভাগে, প্রবেশের পাঠ্য বাক্সটি ক্লিক করুন এবং নিম্নলিখিত বাক্যাংশগুলি প্রবেশ করুন:
  • next word
  • go next
  • next
  • skip
  • skip word

d1c4908a3d7882f8.png

  1. সংরক্ষণ করুন ক্লিক করুন.

Spelling দৃশ্যে Skip অভিপ্রায় যুক্ত করুন

এখন, যখন কোনও ব্যবহারকারী "স্কিপ" অভিপ্রায় প্রকাশ করছেন তখন ক্রিয়াটি বুঝতে পারে। আপনি Spelling দৃশ্যে skip ব্যবহারকারীর অভিপ্রায় যুক্ত করতে পারেন, যেহেতু ব্যবহারকারী Spelling প্রম্পটে সাড়া দিচ্ছেন (" ফোনেটিক বর্ণমালা ব্যবহার করে শব্দটি বানান ")।

Spelling দৃশ্যে এই ব্যবহারকারীর অভিপ্রায় যুক্ত করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বানানের দৃশ্যে ক্লিক করুন।
  2. ব্যবহারকারীর অভিপ্রায় হ্যান্ডলিন জি এর পাশের Spelling দৃশ্যে + (প্লাস সাইন) ক্লিক করুন।
  3. অভিপ্রায় ড্রপ-ডাউন এ স্কিপ নির্বাচন করুন।

5465F97542217964.png

  1. ডানদিকে রূপান্তর বিভাগে, ড্রপ-ডাউন মেনুতে ক্লিক করুন এবং Spelling নির্বাচন করুন।

C8072485CA82BD3F.PNG

  1. সংরক্ষণ করুন ক্লিক করুন.

quit উদ্দেশ্য তৈরি করুন

Quit উদ্দেশ্য তৈরি করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বিকাশ ক্লিক করুন।
  2. উদ্দেশ্যগুলির তালিকা খুলতে নেভিগেশনে ইন্টেন্টস ক্লিক করুন।
  3. উদ্দেশ্যগুলির তালিকা শেষে + (প্লাস সাইন) ক্লিক করুন। নতুন অভিপ্রায়টি Quit এবং Enter টিপুন।
  4. সংজ্ঞা উদ্দেশ্য পৃষ্ঠাটি খোলার জন্য Quit উদ্দেশ্যটি ক্লিক করুন।
  5. যুক্ত প্রশিক্ষণ বাক্যাংশ বিভাগে, প্রবেশের পাঠ্য বাক্সটি ক্লিক করুন এবং নিম্নলিখিত বাক্যাংশগুলি প্রবেশ করুন:
  • I quit
  • Goodbye
  • Cancel
  • Exit
  • Quit

9916F77B8766541E.PNG

  1. Save এ ক্লিক করুন।

Spelling দৃশ্যে Quit অভিপ্রায় যুক্ত করুন

এখন, ক্রিয়াটি বুঝতে পারে যখন কোনও ব্যবহারকারী একটি "প্রস্থান" অভিপ্রায় প্রকাশ করছেন। আপনি quit দৃশ্যে ব্যবহারকারীর উদ্দেশ্যটি যুক্ত করতে পারেন, Spelling ব্যবহারকারী Spelling প্রম্পটে সাড়া দিচ্ছেন (" ফোনেটিক বর্ণমালা ব্যবহার করে শব্দটি বানান ")।

Spelling দৃশ্যে এই ব্যবহারকারীর অভিপ্রায় যুক্ত করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বানানের দৃশ্যে ক্লিক করুন।
  2. ব্যবহারকারীর অভিপ্রায় হ্যান্ডলিংয়ের পাশের Spelling দৃশ্যে + (প্লাস সাইন) ক্লিক করুন।
  3. অভিপ্রায় ড্রপ-ডাউনে প্রস্থান নির্বাচন করুন।

5F62FB18A3653D66.png

  1. ডানদিকে রূপান্তর বিভাগে, ড্রপ-ডাউন মেনুতে ক্লিক করুন এবং End conversation নির্বাচন করুন। 1ffbe35a7bbbb4b0.png
  2. সংরক্ষণ করুন ক্লিক করুন.

phonetic_alphabet প্রকার তৈরি করুন

এই বিভাগে, আপনি phonetic_alphabet নামে একটি নতুন প্রকার তৈরি করেন, যা ফোনেটিক বর্ণমালা বিকল্পগুলি নির্দিষ্ট করে ব্যবহারকারীরা শব্দটি বানান করতে বেছে নিতে পারেন। কোনও ব্যবহারকারী যদি অনুরূপ কিছু বলেন তবে আপনি এই বিকল্পগুলির জন্য কয়েকটি প্রতিশব্দও সংজ্ঞায়িত করতে পারেন। পরবর্তী বিভাগে, আপনি ব্যবহারকারীর প্রতিক্রিয়া পেতে চান তা নির্দিষ্ট করার জন্য আপনি একটি স্লটে phonetic_alphabet প্রকার যুক্ত করুন।

phonetic_alphabet প্রকার তৈরি করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বিকাশ ক্লিক করুন।
  2. প্রকারের অধীনে + (প্লাস সাইন) ক্লিক করুন।
  3. phonetic_alphabet টাইপ করুন এবং Enter টিপুন।
  4. বিকল্পগুলি খুলতে phonetic_alphabet ক্লিক করুন।
  5. কোন ধরণের মানগুলিতে এই ধরণের সমর্থন হবে? বিভাগ, শব্দ এবং প্রতিশব্দ বিকল্প নির্বাচন করুন
  6. অ্যাড এন্ট্রি বিভাগে নিম্নলিখিত এন্ট্রি এবং সংশ্লিষ্ট মানগুলি প্রবেশ করান:

আলফা, অ্যাপল, আমস্টারডাম

ব্রাভো, মাখন, বাল্টিমোর

চার্লি, বিড়াল, ক্যাসাব্লাঙ্কা

d

ডেল্টা, কুকুর, ডেনমার্ক

e

ইকো, এডওয়ার্ড, এডিসন

ফক্সট্রোট, ফক্স, ফ্লোরিডা

g

গল্ফ, জর্জ, গ্যালিপোলি

হোটেল, হ্যারি, হাভানা

i

ভারত, কালি, ইতালি

j

জুলিয়েট, জনি, জেরুজালেম

k

কিলো, কিং, কিলোগ্রাম

l

লিমা, প্রেম, লন্ডন

মি

মাইক, অর্থ, মাদাগাস্কার

n

নভেম্বর, নিউ ইয়র্ক, ন্যান্সি

o

অস্কার, কমলা, অসলো

পি

পাপা, প্যারিস, পিটার

q

কুইবেক, রানী

r

রোমিও, রোমা, রবার্ট

s

সিয়েরা, চিনি, সান্টিয়াগো

t

ট্যাঙ্গো, টমি, ত্রিপোলি

u

ইউনিফর্ম, ছাতা, চাচা

v

ভিক্টর, ভিনেগার, ভ্যালেন্সিয়া

w

হুইস্কি, উইলিয়াম, ওয়াশিংটন

এক্স

এক্স-রে

y

ইয়াঙ্কি, হলুদ, ইয়র্কার

z

জুলু, জেব্রা, জুরিখ

আপনার কী-মান টেবিলটি নিম্নলিখিতগুলির মতো দেখতে হবে:

5B5A5CD9FA557E1B.PNG

  1. সংরক্ষণ করুন ক্লিক করুন.

স্লট ফিলিং কনফিগার করুন

এরপরে, আপনাকে বানানের দৃশ্যে স্লট ফিলিং কনফিগার করতে হবে। স্লট-ফিলিং যুক্তি কনফিগার করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বানানের দৃশ্যে ক্লিক করুন।
  2. স্লট ফিলিংয়ের জন্য Spelling দৃশ্যে + (প্লাস সাইন) ক্লিক করুন।
  3. এন্টার স্লট নাম ক্ষেত্রে, স্লটের নাম হিসাবে userresponse যুক্ত করুন।
  4. প্রকারের ড্রপ-ডাউন নির্বাচন করুন , স্লট টাইপ হিসাবে ফোনেটিক_এলফ্যাবেট নির্বাচন করুন।
  5. এই স্লটটি মানগুলির একটি তালিকা গ্রহণ করে তা পরীক্ষা করে দেখুন
  6. এই স্লটটি প্রয়োজনীয় পরীক্ষা করুন।
  7. কাস্টমাইজ স্লট মান রাইটিংব্যাক বিকল্পটি নির্বাচন করুন এবং সেশন প্যারামিটার টেক্সটবক্সে ইউএসআরস্পোন লিখুন।

BA57A419877A07F3.PNG

  1. সংরক্ষণ করুন ক্লিক করুন.

Spelling স্ক্রিনে শর্ত যুক্ত করুন

Spelling দৃশ্যে শর্ত যুক্ত করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশনে বানানের দৃশ্যে ক্লিক করুন।
  2. শর্তের পাশের Spelling দৃশ্যে + (প্লাস সাইন) ক্লিক করুন।
  3. scene.slots.status == "FINAL" শর্ত হিসাবে প্রবেশ করান
  4. আপনার ওয়েবহুকটি কলটি দেখুন এবং ব্যবহারকারীর প্রতিক্রিয়া যাচাই করতে ইভেন্ট হ্যান্ডলার টেক্সটবক্সে যাচাই করে ভেরিফিস্পেলিংওয়ার্ড লিখুন।
  5. প্রম্পট প্রেরণ করুন চেক করুন।
  6. speech ক্ষেত্রে বাক্যটি প্রতিস্থাপন করুন ( Enter the response that users will see or hear... {} দিয়ে} প্রকৃত প্রম্পটটি ওয়েবহুক দ্বারা জনবহুল হবে।

ওয়েবহুক প্রতিক্রিয়াতে পরামর্শ চিপগুলি যুক্ত করুন

  1. Start দৃশ্যে কোড সম্পাদকের নীচে পরামর্শগুলি ক্লিক করুন। এই ক্রিয়াটি তিনটি পরামর্শ চিপ যুক্ত করে।
  2. title ক্ষেত্রে, Suggested Response 'Next' দিয়ে প্রতিস্থাপন করুন।
  3. একই ফর্ম্যাটিং ব্যবহার করে, ম্যানুয়ালি 'Quit' শিরোনামে একটি পরামর্শ চিপ যুক্ত করুন our আপনার কোডটি নিম্নলিখিত স্নিপেটের মতো দেখতে হবে:
suggestions:
      - title: 'Next'
      - title: 'Quit'

AC3D7A9366EBC1B1.png

  1. সংরক্ষণ করুন ক্লিক করুন.

12. সিমুলেটারে পরীক্ষা বানান অনুশীলন

সিমুলেটারে আপনার ক্রিয়াটি পরীক্ষা করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. নেভিগেশন বারে, আপনাকে সিমুলেটারে নিয়ে যাওয়ার জন্য পরীক্ষায় ক্লিক করুন।
  2. সিমুলেটরে আপনার ক্রিয়াটি পরীক্ষা করতে, ইনপুট ক্ষেত্রে Talk to Spelling Practice টাইপ করুন।
  3. এন্টার চাপুন . আপনার ক্রিয়াটি Main invocation প্রম্পট এবং যুক্ত Start দৃশ্যের প্রম্পটের সাথে প্রতিক্রিয়া জানাতে হবে, "বানান অনুশীলনে আপনাকে স্বাগতম। শব্দটি বানান করতে ফোনেটিক বর্ণমালা ব্যবহার করুন। উদাহরণস্বরূপ এ এর ​​জন্য আলফা, বি এর জন্য ব্র্যাভো, সি এর জন্য চার্লি ইত্যাদি আপনি কি চান চালিয়ে যান? " .
  4. চালিয়ে যেতে হ্যাঁ বলুন
  5. সিমুলেটর বানান হিসাবে একটি শব্দ শব্দ বাজাবে
  6. আপনি ফোনেটিক বর্ণমালা ব্যবহার করে শব্দটি বানান করতে পারেন। উদাহরণস্বরূপ, আরও ভাল বলার জন্য বা "ব্রাভো ইকো টাঙ্গো ট্যাঙ্গো ইকো রোমিও" টাইপ করার জন্য
  7. সিমুলেটর সঠিক বা ভুল প্রতিক্রিয়া দিয়ে প্রতিক্রিয়া জানাবে।
  8. পরবর্তী শব্দটি চালিয়ে যাওয়ার জন্য পাশে বলুন বা বলুন গেম লুপটি প্রস্থান করতে প্রস্থান করুন

13. অভিনন্দন

অভিনন্দন, আপনি সফলভাবে আপনার গেমটি তৈরি করেছেন, বানান অনুশীলন !

আপনি এখন ক্লাউড ফায়ারস্টোর, ক্লাউড ফাংশন এবং গুগল সহকারী অ্যাকশন বিল্ডার ব্যবহার করে একটি গেম তৈরির জন্য প্রয়োজনীয় মূল পদক্ষেপগুলি জানেন।

আপনি কি covered েকে রেখেছেন

  • ক্লাউড ফায়ারস্টোরের সাথে কীভাবে ইন্টারঅ্যাক্ট করবেন
  • ব্যবহারকারীর কাছ থেকে ডেটা সংগ্রহ করতে কীভাবে স্লট ব্যবহার করবেন
  • কীভাবে কোনও ব্যবহারকারীর ইনপুট প্রক্রিয়া করতে এবং প্রতিক্রিয়া ফেরত দিতে হয়
  • কোনও দৃশ্যে যুক্তি যুক্ত করতে শর্তগুলি কীভাবে ব্যবহার করবেন
  • কিভাবে একটি গেম লুপ যুক্ত করবেন

অতিরিক্ত শেখার সংস্থান

গুগল সহকারী জন্য ক্রিয়া বিল্ডিং সম্পর্কে শেখার জন্য আপনি এই সংস্থানগুলি অন্বেষণ করতে পারেন:

আপনার প্রকল্পটি পরিষ্কার করুন [প্রস্তাবিত]

সম্ভাব্য চার্জগুলি এড়াতে, আপনি যে প্রকল্পগুলি ব্যবহার করতে চান না তা অপসারণ করার পরামর্শ দেওয়া হয়। এই কোডল্যাবটিতে আপনি যে প্রকল্পগুলি তৈরি করেছেন তা মুছতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. আপনার ফায়ারবেস প্রকল্প এবং সংস্থানগুলি মুছতে, শাট ডাউন (মুছে ফেলা) প্রকল্প বিভাগে তালিকাভুক্ত পদক্ষেপগুলি সম্পূর্ণ করুন।

সতর্কতা: নিশ্চিত করুন যে আপনি গুগল ক্লাউড কনসোলের সেটিংস পৃষ্ঠায় মুছে ফেলার জন্য সঠিক প্রকল্পটি নির্বাচন করেছেন।

  1. Ption চ্ছিক: অবিলম্বে আপনার প্রকল্পটি অ্যাকশনস কনসোল থেকে অপসারণ করতে, কোনও প্রকল্প বিভাগ মুছে ফেলার ক্ষেত্রে তালিকাভুক্ত পদক্ষেপগুলি সম্পূর্ণ করুন। আপনি যদি এই পদক্ষেপটি সম্পূর্ণ না করেন তবে আপনার প্রকল্পটি প্রায় 30 দিনের পরে স্বয়ংক্রিয়ভাবে সরানো হবে।

আপনি যা তৈরি করেছেন তা ভাগ করে নেওয়ার জন্য আমাদের সর্বশেষ ঘোষণার সাথে যোগাযোগ করতে এবং #গুগলিওতে টুইট করার জন্য টুইটারে @অ্যাকশনসংগুওগল এবং @ফায়ারবেস অনুসরণ করুন!