আপনার অ্যাপ পরীক্ষা করুন এবং ডিবাগ করুন

আমরা সুপারিশ করছি যে আপনি আগে বর্ণিত ধাপগুলি ব্যবহার করে আপনার স্থানীয় পরিপূর্ণতা অ্যাপ তৈরি করুন, তারপর নিম্নলিখিত ধাপগুলি ব্যবহার করে আপনার নিজস্ব হোস্টিং পরিবেশে আপনার স্মার্ট হোম ইন্টিগ্রেশন পরীক্ষা করুন:

  1. আপনার নিজস্ব হোস্টিং পরিবেশে, আপনার স্থানীয় পূর্ণতা অ্যাপটি চালানোর জন্য HTML পৃষ্ঠাটি পরিবেশন করুন। নিম্নলিখিত স্নিপেটে একটি স্ট্যাটিক HTML ফাইলের উদাহরণ দেখানো হয়েছে যা আপনার স্থানীয় পূর্ণতা অ্যাপটি চালায়।

    <html>
      <head>
        <!-- Local Home SDK -->
        <script src="//www.gstatic.com/eureka/smarthome/smarthome_sdk.js"></script>
        <!-- Local app under development -->
        <script src="local_execution.js"></script>
      </head>
    
    </html>
  2. ডিভাইস নিয়ন্ত্রণ পরীক্ষা করুন

  3. Chrome থেকে ডিবাগ করুন । আপনার ইন্টিগ্রেশনের সমস্যা সমাধানের জন্য ব্রেকপয়েন্ট এবং লগ ব্যবহার করুন।

  4. আপনার টাইপস্ক্রিপ্ট কোডটি সংশোধন এবং সংকলন করুন, তারপর এই পদক্ষেপগুলি পুনরাবৃত্তি করুন।

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

ডিভাইস নিয়ন্ত্রণ পরীক্ষা করুন

Google Home Developer Console , আপনাকে আপনার ওয়েব অ্যাপের URL নির্দিষ্ট করতে হবে, যা স্থানীয় পূরণের সময় গুগল হোম বা গুগল নেস্ট ডিভাইসে লোড হওয়া HTML পরিবেশন করে।

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

ক্রোম

  1. Google Home Developer Console আপনার ক্লাউড-টু-ক্লাউড ইন্টিগ্রেশনের সেটআপ এবং কনফিগারেশন পৃষ্ঠায়, স্থানীয় পরিপূর্ণতাতে স্ক্রোল করুন এবং সেটিংটি টগল করুন।
  2. Testing URLs > Testing URL for Chrome এর অধীনে, আপনার স্থানীয় পরিপূর্ণতা অ্যাপ চালানো HTML পরিবেশনকারী ডেভেলপমেন্ট সার্ভার URL নির্দিষ্ট করুন।
  3. সংরক্ষণ করুন এ ক্লিক করুন। আপনার কনসোলের পরিবর্তনগুলি প্রচার করতে Google এর 30 মিনিট পর্যন্ত সময় লাগতে পারে।
  4. আপনার পরীক্ষামূলক Google Home বা Google Nest ডিভাইসটি রিবুট করুন।
  5. আপনার স্মার্ট ডিভাইসে একটি কমান্ড দিন। উদাহরণস্বরূপ, যদি আপনার ডিভাইসটি OnOff বৈশিষ্ট্যটি প্রয়োগ করে, তাহলে আপনি বলতে পারেন "হে গুগল, লাইট জ্বালাও।"

নোড.জেএস

  1. Google Home Developer Console সেটআপ এবং কনফিগারেশন পৃষ্ঠায়, স্থানীয় পরিপূর্ণতাতে স্ক্রোল করুন এবং সেটিংটি টগল করে চালু করুন।
  2. Testing URLs > Testing URL for Node এর অধীনে, আপনার স্থানীয় পরিপূর্ণতা অ্যাপ চালানো জাভাস্ক্রিপ্ট পরিবেশনকারী ডেভেলপমেন্ট সার্ভার URL নির্দিষ্ট করুন।
  3. সংরক্ষণ করুন এ ক্লিক করুন। আপনার কনসোলের পরিবর্তনগুলি প্রচার করতে Google এর 30 মিনিট পর্যন্ত সময় লাগতে পারে।
  4. আপনার পরীক্ষামূলক Google Home বা Google Nest ডিভাইসটি রিবুট করুন।
  5. আপনার স্মার্ট ডিভাইসে একটি কমান্ড দিন। উদাহরণস্বরূপ, যদি আপনার ডিভাইসটি OnOff বৈশিষ্ট্যটি প্রয়োগ করে, তাহলে আপনি বলতে পারেন "হে গুগল, লাইট জ্বালাও।"

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

Chrome থেকে ডিবাগ করুন

আপনি Chrome DevTools ব্যবহার করে আপনার স্থানীয় পরিপূর্ণতা অ্যাপটি ডিবাগ করতে পারেন। ডিবাগ করার আগে, নিশ্চিত করুন যে আপনার পরিবেশ সঠিকভাবে সেট আপ করা আছে:

  • আপনি কনসোলে আপনার ডেভেলপমেন্ট URL টি এমন একটি URL এ সেট করেছেন যা Google Home বা Google Nest ডিভাইসের মাধ্যমে পৌঁছানো যাবে (স্থানীয় এরিয়া নেটওয়ার্কে অথবা ইন্টারনেট ব্যবহার করে),
  • আপনার মেশিনটি আপনার পরীক্ষা করা Google Home বা Google Nest ডিভাইসের সাথে একই স্থানীয় নেটওয়ার্কের সাথে সংযুক্ত।
  • আপনার নেটওয়ার্ক ডিভাইসগুলির মধ্যে প্যাকেটগুলিকে ব্লক করে না।
  • আপনি Google Home Developer Console এবং Google Home অথবা Google Nest ডিভাইসে একই Google অ্যাকাউন্ট দিয়ে লগ ইন করেছেন।
  • আপনি আপনার ক্লাউড পূর্ণতাতে SYNC প্রতিক্রিয়া আপডেট করেছেন । এটি otherDeviceIds ক্ষেত্রে কমপক্ষে একটি বৈধ মান প্রদান করবে।
  • আপনি Google Home Developer Consoleসঠিক স্ক্যান কনফিগারেশন তথ্য প্রবেশ করিয়েছেন।

আপনার স্থানীয় পরিপূর্ণতা অ্যাপটিকে Chrome DevTools ডিবাগারের সাথে সংযুক্ত করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

ক্রোম

  1. আপনার স্থানীয় ডেভেলপমেন্ট মেশিনে, গুগল ক্রোম ব্রাউজারটি ইনস্টল এবং চালু করুন।
  2. আপনার Chrome ব্রাউজারের ঠিকানা ক্ষেত্রে, chrome://inspect#devices লিখে Chrome ইন্সপেক্টর চালু করুন। পৃষ্ঠায় আপনার ডিভাইসের একটি তালিকা দেখতে পাওয়া উচিত এবং আপনার HTML ফাইলটি আপনার পরীক্ষামূলক Google Home বা Google Nest ডিভাইসের নামে তালিকাভুক্ত হওয়া উচিত।
  3. Chrome DevTools চালু করতে আপনার HTML এর নীচে নীল পরিদর্শন লিঙ্কে ক্লিক করুন। কনসোল ট্যাবে যান। লোকাল হোম প্ল্যাটফর্মটি আপনার অ্যাপ সংস্করণ এবং কনসোল লগে লোকাল হোম SDK সংস্করণ আউটপুট করে। যদি আপনি লগটি দেখতে পান, তাহলে এর অর্থ হল Google আপনার অ্যাপটি সফলভাবে লোড করেছে এবং এটির সাথে সংযোগ করতে সক্ষম হয়েছে। যদি না হয়, তাহলে আপনার Google Home বা Google Nest ডিভাইসটি রিবুট করুন।
  4. চিত্র ১: chrome://inspect-এ স্থানীয় পরিপূর্ণতা অ্যাপ।

নোড.জেএস

  1. আপনার স্থানীয় ডেভেলপমেন্ট মেশিনে, গুগল ক্রোম ব্রাউজারটি ইনস্টল এবং চালু করুন।
  2. আপনার পরীক্ষামূলক ডিভাইসের স্থানীয় আইপি ঠিকানা নির্ধারণ করুন।
  3. আপনার ক্রোম ব্রাউজারের ঠিকানা ক্ষেত্রে, chrome://inspect#devices লিখে Chrome ইন্সপেক্টর চালু করুন।
  4. টার্গেট ডিসকভারি সেটিংস খুলতে কনফিগার করুন... নির্বাচন করুন।
  5. চিত্র ২: chrome://inspect-এ টার্গেট ডিসকভারি সেটিংস।
  6. তালিকায় DEVICE_IP_ADDRESS :9222 লিখুন এবং সম্পন্ন ক্লিক করুন।
  7. Chrome DevTools চালু করতে আপনার স্ক্রিপ্টের নীচে নীল রঙের পরিদর্শন লিঙ্কে ক্লিক করুন। কনসোল ট্যাবে যান। লোকাল হোম প্ল্যাটফর্মটি আপনার অ্যাপ সংস্করণ এবং কনসোল লগে লোকাল হোম SDK সংস্করণ আউটপুট করে। যদি আপনি লগটি দেখতে পান, তাহলে এর অর্থ হল Google আপনার অ্যাপটি সফলভাবে লোড করেছে এবং এটির সাথে সংযোগ করতে সক্ষম হয়েছে। যদি না হয়, তাহলে আপনার Google Home বা Google Nest ডিভাইসটি রিবুট করুন।

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

ডিবাগিং টিপস

ডিবাগিংয়ের সময় মনে রাখার জন্য কিছু অতিরিক্ত বিষয় হল:

  • একই স্থানীয় নেটওয়ার্কে আপনার পরীক্ষামূলক অ্যাকাউন্টের সাথে একাধিক Google Home বা Google Nest ডিভাইস লিঙ্ক করবেন না। স্থানীয় পরিপূর্ণতা কমান্ডের মাধ্যমে কোন Google Home বা Google Nest ডিভাইস লক্ষ্য করা হবে তা আপনি নিয়ন্ত্রণ করতে পারবেন না।
  • আপনার ডেভেলপমেন্ট URL থেকে সর্বশেষ কোড দিয়ে আপনার লোকাল ফুলফিলমেন্ট অ্যাপ কন্টেইনারটি পুনরায় লোড করতে Chrome DevTools-এ পৃষ্ঠাটি রিফ্রেশ করুন। এটি লোকাল হোম প্ল্যাটফর্ম রিসেট করে না, যা আপনার লোকাল ফুলফিলমেন্ট অ্যাপে প্ল্যাটফর্মের ইন্টেন্টগুলি (যেমন IDENTIFY ) পুনরায় ট্রিগার করার জন্য প্রয়োজন হতে পারে। লোকাল হোম প্ল্যাটফর্ম রিসেট করতে, আপনার Google Home বা Google Nest ডিভাইসটি রিবুট করুন।
  • আপনার জাভাস্ক্রিপ্ট অ্যাপটি ত্রুটি ছাড়াই লোড হচ্ছে কিনা তা পরীক্ষা করুন। এটি করার জন্য, DevTools পৃষ্ঠার কনসোল বিভাগটি পরীক্ষা করুন। যদি কোনও সমস্যা হয়, তাহলে আপনি এইরকম একটি বার্তা দেখতে পাবেন: 'Uncaught TypeError: Cannot read property 'open' of null.'
  • IDENTIFY প্রতিক্রিয়া থেকে verificationId অবশ্যই SYNC প্রতিক্রিয়া থেকে অন্য একটি otherDeviceIds সাথে মিলবে।
  • EXECUTE হ্যান্ডলারের জন্য, নিশ্চিত করুন যে আপনার HTTP, TCP, অথবা UDP কমান্ডগুলি আপনার ডিভাইসে গ্রহণ করা হচ্ছে এবং প্রত্যাশা অনুযায়ী কাজ করছে।
  • হ্যান্ডলারদের কাছ থেকে একটি Promise ফেরত দিতে ভুলবেন না।
  • মেমরিতে গ্লোবাল স্টেট বজায় রাখা এড়িয়ে চলুন। অ্যাপ্লিকেশন জীবনচক্র দেখুন।
  • আপনার স্থানীয় পরিপূর্ণতা অ্যাপ দ্বারা প্রদত্ত ত্রুটিগুলি আপনার প্রকল্পের ত্রুটি লগে প্রদর্শিত হবে।

প্রস্তুত করুন এবং উৎপাদন শুরু করুন

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

  1. একটি টার্মিনাল খুলুন। আপনার প্রোজেক্ট ডিরেক্টরিতে, npm run build কমান্ডটি চালান। এই কমান্ডটি dist ডিরেক্টরির অধীনে আপনার অ্যাপের জন্য নিম্নলিখিত জাভাস্ক্রিপ্ট বান্ডেল তৈরি করে:
    project-directory/
    └── dist
     ├── web
     │    └── bundle.js
     └── node
          └── bundle.js
    
  2. Google Home Developer Console সেটআপ এবং কনফিগারেশন পৃষ্ঠায়, স্থানীয় পরিপূর্ণতাতে স্ক্রোল করুন এবং সেটিংটি টগল করে চালু করুন।
  3. আপলোড জাভাস্ক্রিপ্ট বোতাম ব্যবহার করে, আপনার পূর্বে তৈরি করা বান্ডেল ফাইলগুলি আপলোড করুন।
    চিত্র ৩: আপনার জাভাস্ক্রিপ্ট অ্যাপ আপলোড করুন।
    বান্ডেল ফাইলের উভয় সংস্করণ (নোড, ওয়েব) আপলোড করতে ভুলবেন না যাতে আপনার অ্যাকশন স্থানীয় পরিপূর্ণতা সমর্থন করে এমন সমস্ত রানটাইম পরিবেশে সঠিকভাবে কাজ করার জন্য কনফিগার করা হয়।
    1. আপনার জাভাস্ক্রিপ্ট টার্গেটিং Node.js আপলোড করুন : dist/node ডিরেক্টরি থেকে bundle.js ফাইলটি আপলোড করুন।
    2. আপনার জাভাস্ক্রিপ্ট টার্গেট করে Chrome (ব্রাউজার) আপলোড করুন : dist/web ডিরেক্টরি থেকে bundle.js ফাইলটি আপলোড করুন।
  4. একটি Assistant-সক্ষম ডিভাইসে আপনার Action পরীক্ষা করুন, যাতে নিশ্চিত হতে পারেন যে এটি উৎপাদন পরিবেশে প্রত্যাশা অনুযায়ী আচরণ করে। আরও জানতে, আপনার স্মার্ট হোম Action পরীক্ষা করুন এবং শেয়ার করুন দেখুন
  5. আপনার অ্যাকশন কীভাবে কাজ করে তাতে সন্তুষ্ট হলে, "আপনার স্মার্ট হোম অ্যাকশন চালু করুন" এর নির্দেশাবলী অনুসরণ করে এটি উৎপাদন স্থাপনের জন্য Google-এ জমা দিন। এর মধ্যে স্ব-পরীক্ষা এবং সার্টিফিকেশন অনুরোধের ধাপগুলি সম্পূর্ণ করা অন্তর্ভুক্ত।