অধ্যায় 9: ডায়ালগফ্লো দিয়ে একটি গুগল হোম অ্যাপ তৈরি করছে ইনলাইন সম্পাদকের মাধ্যমে পরিপূর্ণতা

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

সিরিজ সামগ্রী:

অধ্যায় 6: গুগল হোম অ্যাপ টিউটোরিয়াল: ওভারভিউ

অধ্যায় 7: গুগল হোম অ্যাপ টিউটোরিয়াল: কথোপকথন ডিজাইন

অধ্যায় 8: গুগল হোম অ্যাপ টিউটোরিয়াল: আপনার পরিবেশ নির্ধারণ করা

অধ্যায় 9: গুগল হোম অ্যাপ টিউটোরিয়াল: ইনলাইন সম্পাদকের মাধ্যমে পূর্ণতা

অধ্যায় 10: গুগল হোম অ্যাপ টিউটোরিয়াল: ক্লাউড ডেটা স্টোরেজ এর মাধ্যমে পূরণ

অধ্যায় 11: গুগল হোম অ্যাপ টিউটোরিয়াল: ওয়েবহুকের মাধ্যমে পরিপূর্ণতা

অধ্যায় 12: গুগল হোম অ্যাপ টিউটোরিয়াল: অ্যাপ ডিপ্লোয়মেন্ট

সংক্ষিপ্ত বিবরণ এবং আমরা বর্তমানে যে বৃহত্তর চিত্রটির দিকে লক্ষ্য করছি।

পদক্ষেপ 1: সন্ধানের জন্য অনুসন্ধানের উদ্দেশ্যটি পূরণ করুন for

পদক্ষেপ 2: - ইনলাইন সম্পাদকের মাধ্যমে পূরণ [ফায়ারবেসের জন্য ক্লাউড ফাংশন দ্বারা চালিত]

ইনলাইন সম্পাদকের সবকিছু মুছে ফেলুন। আসুন স্ক্র্যাচ থেকে লাইন লিখে লাইন লেখার চেষ্টা করি। ভয় পাওয়ার কিছু নেই, আমার সাথে থাকুন।

এখানে যায়। প্রথম লাইন।

'কঠোর ব্যবহার';

কঠোর:

"কঠোর ব্যবহার" এর উদ্দেশ্যটি হ'ল কোডটি "কঠোর মোডে" কার্যকর করা উচিত indicate উদাহরণস্বরূপ, কঠোর মোডে আপনি অঘোষিত ভেরিয়েবলগুলি ব্যবহার করতে পারবেন না।

সমস্ত আধুনিক ব্রাউজারগুলি ইন্টারনেট এক্সপ্লোরার (আইই) 9 এবং নিম্নের ব্যতীত "কঠোরভাবে ব্যবহার করুন" সমর্থন করে: যেভাবেই আইই ব্যবহার করেন?

ঠিক আছে, এগিয়ে যান.

কন্সট ফাংশন = প্রয়োজনীয় ('ফায়ারবেস-ফাংশন');

কনস্ট মূলত এমন কিছু সংজ্ঞা দেয় যা প্রোগ্রামে চিরদিনের জন্য পরিবর্তন হয় না। আমরা ফায়ারবেস থেকে ফাংশন মডিউলটি এখানে আমদানি করব।

তারপরে আরও কয়েকটি ধ্রুবক, যার প্রতিটি আমাদের উদ্দেশ্যকে ধারণ করবে। এই স্ট্রিংগুলির উদ্দেশ্যটির নামের সাথে মিল থাকা উচিত।

'কঠোর ব্যবহার'; কন্সট ফাংশন = প্রয়োজনীয় ('ফায়ারবেস-ফাংশন'); কনস্ট {ডায়ালগফ্লো} = প্রয়োজন ('অ্যাকশন-অন-গুগল');
কনট WELCOME_INTENT = 'ডিফল্ট ওয়েলকাম ইনটেন্ট'; কনসাল্ট FALLBACK_INTENT = 'ডিফল্ট ফলব্যাক ইন্টেন্ট'; কনট LOOKING_FOR_QUOTE_INTENT = 'সন্ধানকারীফোট';

...

এখন আসুন একটি ধ্রুবক অ্যাপ্লিকেশনটিতে ডায়লগফ্লো বস্তুটি সঞ্চয় করি।

কনট অ্যাপ = ডায়লগফ্লো ();

এরপরে, আমরা অভিপ্রায়টি সংজ্ঞায়িত করব এবং জিজ্ঞাসা ফাংশনটি ব্যবহারকারীর সাথে কথা বলার জন্য একটি "কনভ" আইটেম ইনস্ট্যান্ট করব।

app.intent (WELCOME_INTENT, (রূপান্তর) => {কনভাস্ক ("ডাঃমোটাইভেশনকে স্বাগতম! বন্ধুত্ব, রোম্যান্স বা অনুপ্রেরণা সম্পর্কে একটি উদ্ধৃতি অনুরোধ করুন");});

ডিফল্ট গ্রিটিং ইন্টেন্টের অধীনে কমপ্লায়েন্স বিভাগে ওয়েবহুক সক্ষম করতে ভুলবেন না।

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

ফ্যালব্যাক অভিপ্রায় জন্য এক

app.intent (FALLBACK_INTENT, (প্রত্যয়)) => {কনভাস্ক ("বিড়বিড় করা এবং কথা বলা বন্ধ করুন");});

আমাদের কাস্টম উদ্দেশ্যে এক

app.intent (LOOKING_FOR_QUOTE_INTENT, (প্রত্যয়)) => {কনভাস্ক ("বন্ধুরা থেরাপিস্ট যার সাথে আমরা পান করতে পারি");});

পরিশেষে, যখন পূর্ণতা বলা হয় তখন আমরা ডায়লগফ্লো অবজেক্ট অ্যাপটি ফিরিয়ে দেব

রফতানি.ডায়ালোগফ্লোফায়ারবেসফুলিলমেন্ট = ফাংশন। https.onRequest (অ্যাপ);

সম্পূর্ণ কোডটি দেখতে এমন দেখাচ্ছে

'কঠোর ব্যবহার'; কন্সট ফাংশন = প্রয়োজনীয় ('ফায়ারবেস-ফাংশন'); কনস্ট {ডায়ালগফ্লো} = প্রয়োজন ('অ্যাকশন-অন-গুগল');
কনট অ্যাপ = ডায়লগফ্লো ();
app.intent (WELCOME_INTENT, (রূপান্তর) => {কনভাস্ক ("ডাঃমোটাইভেশনকে স্বাগতম! বন্ধুত্ব, রোম্যান্স বা অনুপ্রেরণা সম্পর্কে একটি উদ্ধৃতি অনুরোধ করুন");});
app.intent (FALLBACK_INTENT, (প্রত্যয়)) => {কনভাস্ক ("বিড়বিড় করা এবং কথা বলা বন্ধ করুন");});
app.intent (LOOKING_FOR_QUOTE_INTENT, (প্রত্যয়)) => {কনভাস্ক ("বন্ধুরা থেরাপিস্ট যার সাথে আমরা পান করতে পারি");});
রফতানি.ডায়ালোগফ্লোফায়ারবেসফুলিলমেন্ট = ফাংশন। htps.onRequest (অ্যাপ);

পদক্ষেপ 3: ফাংশন স্থাপন করুন

পদক্ষেপ 4: ফাংশন পরীক্ষা করুন

ওয়েবহুক এর মাধ্যমে পরিপূর্ণতা সক্রিয় না করে স্ট্যান্ডার্ড ফ্যালব্যাক চেষ্টা করুন এবং এইভাবে try

ওয়েবহুক ছাড়াই সক্রিয় করা:

ডায়াগনস্টিক তথ্যের মূলত কেবল একটি RAW API প্রতিক্রিয়া রয়েছে

আপনি যদি ইতিমধ্যে না করে থাকেন তবে এখন ফ্যালব্যাক অভিপ্রায়টির জন্য ওয়েবহুক পরিপূরণ সক্ষম করুন।

আউটপুট:

এখন যে ওয়েবহুক কল সক্ষম হয়েছে, আমরা একটি পরিপূর্ণতা প্রতিক্রিয়াও পাই।

পদক্ষেপ 5: কোডে আরও ফাংশন যুক্ত করুন।

যেহেতু আমরা প্যারামিটার হিসাবে কোটটাইপটি পাই, তাই আমরা অন্য যদি বিবৃতি দিয়ে আমাদের কোডে এটি ব্যবহার করি।

প্রথমে কোটটাইপ সত্তা নির্ধারণ করুন

কনট QUOTE_TYPE_ENTITY = 'কোটটাইপ';

তারপরে প্যারামিটারের মানটি বের করুন, এটি একটি ভেরিয়েবলে সংরক্ষণ করুন। মানগুলিতে এটি মানচিত্র করুন এবং প্রতিবার বিভিন্ন উদ্ধৃতি চিহ্ন লিখুন।

app.intent (LOOKING_FOR_QUOTE_INTENT, (প্রত্যয়)) => {কনট কোট_টাইপ = কনফিউমারেটর (কোয়েটওয়াইপাইপয়েন্টিটি) toলওওয়ারকেস (); ((উদ্ধৃতি_প্রকার == "অনুপ্রেরণামূলক")) {কনভ্যাসক ("অলস গাধা হয়ে উঠবেন না")} অন্য যদি (উদ্ধৃতি_প্রকার == "বন্ধুত্ব") {কনভাস্ক ("বন্ধুরা থেরাপিস্ট যাদের সাথে আমরা পান করতে পারি");} অন্যথায় যদি (উদ্ধৃতি_প্রকার == "রোমান্টিক") {কনভ্যাসক ("কিছু রোম্যান্টিক");} অন্যথায় {কনভাস্ক ("আমার সাথে কথা বলার পরিবর্তে আপনার ঠোঁট ছেড়ে কাজ করুন");}});

এটি চেষ্টা করুন:

ত্রুটিযুক্ত লগগুলির জন্য আপনি ফায়ারবেস কনসোলটিও অনুসন্ধান করতে পারেন।

আপনার ফায়ার বেস কনসোলে যান বা ইনলাইন সম্পাদকের লিঙ্কটি ক্লিক করুন

ঠিক আছে .. সুতরাং কনফিগারেট.মিটারগুলি কোনও ফাংশন নয়, তবে একটি অবজেক্ট অ্যারে, সুতরাং () এ [] পরিবর্তন করুন

কনভ.প্যারামিটারগুলি (QUOTE_TYPE_ENTITY)

প্রতি

রূপান্তরকারী পদক্ষেপগুলি [QUOTE_TYPE_ENTITY]

চূড়ান্ত কোডটি নীচে দেওয়া হল:

'কঠোর ব্যবহার'; কন্সট ফাংশন = প্রয়োজনীয় ('ফায়ারবেস-ফাংশন'); কনস্ট {ডায়ালগফ্লো} = প্রয়োজন ('অ্যাকশন-অন-গুগল');
কনট অ্যাপ = ডায়লগফ্লো ();
app.intent (WELCOME_INTENT, (রূপান্তর) => {কনভাস্ক ("ডাঃমোটাইভেশনকে স্বাগতম! বন্ধুত্ব, রোম্যান্স বা অনুপ্রেরণা সম্পর্কে একটি উদ্ধৃতি অনুরোধ করুন");});
app.intent (FALLBACK_INTENT, (প্রত্যয়)) => {কনভাস্ক ("বিড়বিড় করা এবং কথা বলা বন্ধ করুন");});
app.intent (LOOKING_FOR_QUOTE_INTENT, (প্রত্যয়)) => {কনট কোট_টাইপ = কনফিগারেশন [কোয়েটওয়াইপাইপিটিএনটি] toলওওয়ারকেস (); যদি (উদ্ধৃতি_প্রকার == "অনুপ্রেরণামূলক") {কনভাস্ক ("অলস গাধা হয়ে উঠবেন না"); অন্য if (উদ্ধৃতি_প্রকার == "বন্ধুত্ব") {কনভাস্ক ("বন্ধুরা থেরাপিস্ট যাদের সাথে আমরা পান করতে পারি");} অন্যথায় যদি (উদ্ধৃতি_প্রকার == "রোমান্টিক") {কনভ্যাসক ("কিছু রোম্যান্টিক");} অন্য {কনভাস্ক ("আমার সাথে কথা বলার পরিবর্তে নীচে গিয়ে কাজ করুন");}});
রফতানি.ডায়ালোগফ্লোফায়ারবেসফুলিলমেন্ট = ফাংশন। https.onRequest (অ্যাপ);

পদক্ষেপ:: স্থাপন এবং পরীক্ষা:

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

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

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

এখানে আমাদের শীর্ষ গল্প সাবস্ক্রাইব।