अपने ऐप्लिकेशन की जांच करना और उसे डीबग करना
संग्रह की मदद से व्यवस्थित रहें
अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.
हमारा सुझाव है कि आप पहले बताए गए चरणों का इस्तेमाल करके, स्थानीय फ़ुलफ़िलमेंट वाला ऐप्लिकेशन बनाएं. इसके बाद, अपने स्मार्ट होम इंटिग्रेशन की जांच, अपने होस्टिंग एनवायरमेंट पर करें. इसके लिए, यह तरीका अपनाएं:
अपने होस्टिंग एनवायरमेंट में, स्थानीय फ़ुलफ़िलमेंट वाला ऐप्लिकेशन चलाने वाला एचटीएमएल पेज उपलब्ध कराएं. यहां दिया गया स्निपेट, एक स्टैटिक एचटीएमएल फ़ाइल का उदाहरण दिखाता है, जो स्थानीय फ़ुलफ़िलमेंट वाला ऐप्लिकेशन चलाती है.
<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>
Chrome से डीबग करें. अपने इंटिग्रेशन की समस्याओं को हल करने के लिए, ब्रेकपॉइंट और लॉग का इस्तेमाल करें.
अपने TypeScript कोड में बदलाव करें और उसे कंपाइल करें. इसके बाद, यह तरीका दोहराएं.
बनाने और जांचने की इस प्रोसेस को दोहराकर, अपने कोड में किए गए बदलावों को तुरंत देखा जा सकता है. इससे, कोड से जुड़ी समस्याओं को डीबग करने में मदद मिलती है.
डिवाइस कंट्रोल की सुविधा की जांच करना
Google Home Developer Console में, आपको
अपने वेब ऐप्लिकेशन का यूआरएल बताना होगा. यह यूआरएल, उस एचटीएमएल को उपलब्ध कराता है जो स्थानीय फ़ुलफ़िलमेंट के दौरान, Google Home या Google Nest डिवाइस पर लोड होता है.
स्थानीय फ़ुलफ़िलमेंट के साथ डिवाइस कंट्रोल की सुविधा की जांच करने के लिए, यह तरीका अपनाएं:
यूआरएल की जांच करना >
Chrome के लिए यूआरएल की जांच करना में, डेवलपमेंट सर्वर
का वह यूआरएल डालें जो स्थानीय फ़ुलफ़िलमेंट वाला ऐप्लिकेशन चलाने वाले एचटीएमएल को उपलब्ध कराता है.
सेव करें पर क्लिक करें. Google को कंसोल में किए गए आपके बदलावों को लागू करने में 30 मिनट तक लग सकते हैं.
Google Home या Google Nest डिवाइस को रीबूट करें जिसकी जांच की जा रही है.
अपने स्मार्ट डिवाइस को कोई निर्देश दें. उदाहरण के लिए, अगर आपके डिवाइस में OnOff ट्रेट लागू किया गया है, तो "Ok Google, लाइटें चालू करो" कहा जा सकता है.
यूआरएल की जांच करना >
Node के लिए यूआरएल की जांच करना में, डेवलपमेंट सर्वर का वह यूआरएल डालें जो स्थानीय फ़ुलफ़िलमेंट वाला ऐप्लिकेशन चलाने वाले JavaScript को उपलब्ध कराता है.
सेव करें पर क्लिक करें. Google को कंसोल में किए गए आपके बदलावों को लागू करने में 30 मिनट तक लग सकते हैं.
Google Home या Google Nest डिवाइस को रीबूट करें जिसकी जांच की जा रही है.
अपने स्मार्ट डिवाइस को कोई निर्देश दें. उदाहरण के लिए, अगर आपके डिवाइस में OnOff ट्रेट लागू किया गया है, तो "Ok Google, लाइटें चालू करो" कहा जा सकता है.
आपके डिवाइस पर कौनसे रनटाइम का इस्तेमाल किया जाता है, इस बारे में ज़्यादा जानने के लिए, काम करने वाले
डिवाइस देखें.
कमांड का इस्तेमाल करके रीसेट करें.
Chrome से डीबग करना
Chrome DevTools का इस्तेमाल करके, स्थानीय फ़ुलफ़िलमेंट वाले ऐप्लिकेशन को डीबग किया जा सकता है.
डीबग करने से पहले, पक्का करें कि आपका एनवायरमेंट सही तरीके से सेट अप किया गया हो:
आपने कंसोल में डेवलपमेंट यूआरएल को ऐसे यूआरएल पर सेट किया हो जिसे Google Home या Google Nest डिवाइस से ऐक्सेस किया जा सकता हो. यह यूआरएल, लोकल एरिया नेटवर्क पर या इंटरनेट का इस्तेमाल करके ऐक्सेस किया जा सकता है.
आपकी मशीन, उसी लोकल एरिया नेटवर्क से कनेक्ट हो जिससे Google Home या Google Nest का वह डिवाइस कनेक्ट है जिसकी जांच की जा रही है.
आपका नेटवर्क, डिवाइसों के बीच भेजे जाने वाले पैकेट को ब्लॉक नहीं करता हो.
स्थानीय फ़ुलफ़िलमेंट वाले ऐप्लिकेशन को Chrome DevTools के डीबगर से कनेक्ट करने के लिए, यह तरीका अपनाएं:
Chrome
अपने लोकल डेवलपमेंट मशीन में, Google Chrome ब्राउज़र इंस्टॉल करें और उसे लॉन्च करें.
Google Chrome browser.
अपने Chrome ब्राउज़र के पता फ़ील्ड में, Chrome इंस्पेक्टर
लॉन्च करने के लिए यह डालें: chrome://inspect#devices. आपको पेज पर डिवाइसों की सूची दिखेगी. साथ ही, आपकी एचटीएमएल फ़ाइल, Google Home या Google Nest डिवाइस के उस डिवाइस के नाम के नीचे दिखेगी जिसकी जांच की जा रही है.
Chrome DevTools लॉन्च करने के लिए, अपने एचटीएमएल के नीचे मौजूद नीले रंग के 'जांच करें' लिंक पर क्लिक करें.
कंसोल टैब पर जाएं.
Local Home प्लैटफ़ॉर्म, कंसोल लॉग में आपके ऐप्लिकेशन का वर्शन और Local Home SDK
वर्शन दिखाता है. अगर आपको लॉग दिखता है, तो इसका मतलब है कि Google ने
आपके ऐप्लिकेशन को लोड कर लिया है और उससे कनेक्ट किया जा सकता है.
अगर ऐसा नहीं है, तो Google Home या Google Nest डिवाइस को रीबूट करें.
पहली इमेज: chrome://inspect में स्थानीय फ़ुलफ़िलमेंट वाला ऐप्लिकेशन.
Node.js
अपने लोकल डेवलपमेंट मशीन में, Google Chrome ब्राउज़र इंस्टॉल करें और उसे लॉन्च करें.
Google Chrome browser.
अपने टेस्ट के लिए डिवाइस का लोकल आईपी पता पता करें.
अपने Chrome ब्राउज़र के पता फ़ील्ड में, Chrome इंस्पेक्टर
लॉन्च करने के लिए यह डालें: chrome://inspect#devices.
टारगेट डिस्कवरी सेटिंग खोलने के लिए, कॉन्फ़िगर करें... को चुनें.
दूसरी इमेज: chrome://inspect में टारगेट डिस्कवरी सेटिंग.
सूची में DEVICE_IP_ADDRESS:9222 डालें और
हो गया पर क्लिक करें.
Chrome DevTools लॉन्च करने के लिए, अपने स्क्रिप्ट के नीचे मौजूद नीले रंग के 'जांच करें' लिंक पर क्लिक करें.
कंसोल टैब पर जाएं.
Local Home प्लैटफ़ॉर्म, कंसोल लॉग में आपके ऐप्लिकेशन का वर्शन और Local Home SDK
वर्शन दिखाता है. अगर आपको लॉग दिखता है, तो इसका मतलब है कि Google ने
आपके ऐप्लिकेशन को लोड कर लिया है और उससे कनेक्ट किया जा सकता है.
अगर ऐसा नहीं है, तो Google Home या Google Nest डिवाइस को रीबूट करें.
आपके डिवाइस पर कौनसे रनटाइम का इस्तेमाल किया जाता है, इस बारे में ज़्यादा जानने के लिए, काम करने वाले
डिवाइस देखें.
डीबग करने के लिए सलाह
डीबग करते समय, इन बातों का ध्यान रखें:
एक ही लोकल नेटवर्क पर, अपने टेस्ट खाते से एक से ज़्यादा Google Home या Google Nest डिवाइसों को लिंक न करें. स्थानीय फ़ुलफ़िलमेंट के लिए इस्तेमाल की जाने वाली कमांड से, किस Google Home या Google Nest डिवाइस को टारगेट किया जाएगा, यह कंट्रोल नहीं किया जा सकेगा.
Chrome DevTools में पेज को रीफ़्रेश करें, ताकि आपके डेवलपमेंट यूआरएल से मिले नए कोड के साथ, स्थानीय फ़ुलफ़िलमेंट वाले ऐप्लिकेशन का कंटेनर फिर से लोड हो जाए. इससे Local Home प्लैटफ़ॉर्म रीसेट नहीं होता. हालांकि, स्थानीय फ़ुलफ़िलमेंट वाले ऐप्लिकेशन में प्लैटफ़ॉर्म इंटेंट (जैसे, IDENTIFY) को फिर से ट्रिगर करने के लिए, प्लैटफ़ॉर्म को रीसेट करना ज़रूरी हो सकता है. Local Home प्लैटफ़ॉर्म को रीसेट करने के लिए, Google Home या Google Nest डिवाइस को रीबूट करें.
पक्का करें कि आपका JavaScript ऐप्लिकेशन, बिना किसी गड़बड़ी के लोड हो जाए. इसके लिए, DevTools पेज के कंसोल सेक्शन को देखें. अगर कोई समस्या है, तो आपको 'Uncaught TypeError: Cannot read property 'open' of null.' जैसा मैसेज दिखेगा.
IDENTIFY के जवाब में मौजूद verificationId, SYNC के जवाब में मौजूद otherDeviceIds में से किसी एक से मेल खाना चाहिए.
EXECUTE हैंडलर के लिए, पक्का करें कि आपके डिवाइस को एचटीटीपी, टीसीपी या यूडीपी कमांड मिल सकें और वे उम्मीद के मुताबिक काम करें.
स्थानीय फ़ुलफ़िलमेंट वाले ऐप्लिकेशन से होने वाली गड़बड़ियां, आपके प्रोजेक्ट के
गड़बड़ी लॉग में दिखेंगी.
प्रोडक्शन के लिए तैयार करना और लॉन्च करना
अपने स्मार्ट होम ऐक्शन को लॉन्च करने के लिए, यह तरीका अपनाएं:
कोई टर्मिनल खोलें. अपने प्रोजेक्ट की डायरेक्ट्री में, npm run build कमांड चलाएं.
इस कमांड से, dist डायरेक्ट्री में आपके ऐप्लिकेशन के लिए ये JavaScript बंडल जनरेट होते हैं:
Google Home Developer Console में, सेटअप और कॉन्फ़िगरेशन पेज पर जाएं. इसके बाद, स्थानीय फ़ुलफ़िलमेंट पर स्क्रोल करें और सेटिंग को टॉगल करके चालू करें.
JavaScript अपलोड करें बटन का इस्तेमाल करके, पहले जनरेट की गई बंडल फ़ाइलें अपलोड करें.
तीसरी इमेज: अपना JavaScript ऐप्लिकेशन अपलोड करें.
बंडल फ़ाइलों के दोनों वर्शन (Node, Web) अपलोड करना न भूलें,
ताकि आपका ऐक्शन, स्थानीय फ़ुलफ़िलमेंट के साथ काम करने वाले सभी रनटाइम
एनवायरमेंट में सही तरीके से काम करे.
Node.js को टारगेट करने वाला JavaScript अपलोड करें: bundle.js
फ़ाइल को dist/node डायरेक्ट्री से अपलोड करें.
Chrome (ब्राउज़र) को टारगेट करने वाला JavaScript अपलोड करें: bundle.js फ़ाइल को dist/web डायरेक्ट्री से अपलोड करें.
Assistant की सुविधा वाले किसी डिवाइस पर, अपने ऐक्शन की जांच करें, ताकि यह पुष्टि की जा सके कि यह प्रोडक्शन एनवायरमेंट में उम्मीद के मुताबिक काम करता है. ज़्यादा जानने के लिए, अपने स्मार्ट होम ऐक्शन की जांच करना और उसे शेयर करना देखें.
जब आपको लगे कि आपका ऐक्शन सही तरीके से काम कर रहा है, तो उसे
प्रोडक्शन में डिप्लॉय करने के लिए, Google को सबमिट करें. इसके लिए,
अपने स्मार्ट होम ऐक्शन को लॉन्च करना में दिए गए निर्देशों का पालन करें. इसमें, खुद से जांच करने और सर्टिफ़िकेशन के अनुरोध के चरण पूरे करना शामिल है.
[[["समझने में आसान है","easyToUnderstand","thumb-up"],["मेरी समस्या हल हो गई","solvedMyProblem","thumb-up"],["अन्य","otherUp","thumb-up"]],[["गलत जानकारी","incorrectInformation","thumb-down"],["ज़रूरत के मुताबिक जानकारी/सैंपल नहीं हैं","notEnoughInformationSamples","thumb-down"],["बहुत मुश्किल है","tooComplicated","thumb-down"],["अन्य","otherDown","thumb-down"]],["आखिरी बार 2024-11-26 (UTC) को अपडेट किया गया."],[],[]]