मूड

स्मार्ट होम इंटेंट, मैसेज वाले आसान ऑब्जेक्ट होते हैं. इनसे यह पता चलता है कि Cloud-to-cloud इंटिग्रेशन का इस्तेमाल करके क्या करना है. जैसे, लाइट चालू करना या स्पीकर पर ऑडियो कास्ट करना.

सभी smart home इंटेंट, action.devices नेमस्पेस में शामिल होते हैं. साथ ही, आपको उनके लिए फ़ुलफ़िलमेंट की जानकारी देनी होगी. जब भी Google Assistant, 'पूरा करें' इंटेंट भेजता है, तो उपयोगकर्ता के तीसरे पक्ष के OAuth 2 ऐक्सेस टोकन को अनुमति हेडर में पास किया जाता है.

ये इस्तेमाल किए जा सकने वाले smart home इंटेंट हैं:

सिंक करें

action.devices.SYNC इंटेंट का इस्तेमाल, उन smart home डिवाइसों की सूची का अनुरोध करने के लिए किया जाता है जिन्हें उपयोगकर्ता ने कनेक्ट किया है और जो इस्तेमाल के लिए उपलब्ध हैं.

जब कोई उपयोगकर्ता Google Home app (GHA) का इस्तेमाल करके अपने डिवाइस सेट अप करता है, तो उसकी पुष्टि आपके क्लाउड इन्फ़्रास्ट्रक्चर के लिए भी की जाती है. इसके बाद, Assistant को OAuth2 टोकन मिलता है. इस समय, Assistant आपके क्लाउड इन्फ़्रास्ट्रक्चर से उपयोगकर्ता के डिवाइसों और सुविधाओं की शुरुआती सूची पाने के लिए, आपके फ़ुलफ़िलमेंट को action.devices.SYNC इंटेंट भेजता है.

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

किसी उपयोगकर्ता के खाते को अनलिंक और फिर से लिंक करने से बचने के लिए, Assistant को सिंक करने का अनुरोध भेजा जा सकता है. इससे, डिवाइसों और सुविधाओं की सूची सिंक करने के लिए, action.devices.SYNC इंटेंट को फ़ुलफ़िलमेंट के लिए भेजा जाता है. ज़्यादा जानकारी के लिए, अनुरोध सिंक करने की सुविधा लागू करना देखें.

सिंक करने के इंटेंट का फ़्लो डायग्राम
दूसरी इमेज: सिंक करने का इंटेंट

लोकल फ़ुलफ़िलमेंट सेटअप के दौरान, Local Home प्लैटफ़ॉर्म, smart home ऐक्शन के क्लाउड फ़ुलफ़िलमेंट से मिले SYNC रिस्पॉन्स की जांच करता है. स्थानीय खरीदारी की सुविधा के साथ काम करने के लिए, SYNC के जवाब में बदलाव करने के तरीके के बारे में ज़्यादा जानने के लिए, क्लाउड फ़ुलफ़िलमेंट में सिंक किए गए जवाब को अपडेट करना लेख पढ़ें.

QUERY

action.devices.QUERY इंटेंट का इस्तेमाल, smart home डिवाइसों की मौजूदा स्थिति के बारे में क्वेरी करने के लिए किया जाता है.

जब उपयोगकर्ता डिवाइस की स्थिति के बारे में सवाल पूछते हैं, तो इस तरह के सवालों के जवाब देने के लिए, Ok Google, किचन में कौनसी लाइटें चालू हैं? Assistant, आपके फ़ुलफ़िलमेंट को action.devices.QUERY इंटेंट भेजता है.

क्वेरी इंटेंट का फ़्लो डायग्राम
तीसरी इमेज: क्वेरी इंटेंट

उपयोगकर्ताओं को बेहतर अनुभव देने के लिए, आपको डिवाइस की स्थिति की रिपोर्ट की सुविधा लागू करनी चाहिए. इससे, उपयोगकर्ता के डिवाइसों की मौजूदा स्थिति की जानकारी, सीधे Google Home Graph को दी जा सकती है. उदाहरण के लिए, इससे Assistant को पता चलता है कि आपके उपयोगकर्ता ने लाइट के सामान्य स्विच से स्मार्ट लाइट चालू की है या नहीं.

'डिवाइस की स्थिति' का इस्तेमाल करके, डिवाइस की स्थिति की रिपोर्ट करना
चौथी इमेज: डिवाइस की स्थिति की शिकायत करना

EXECUTE

action.devices.EXECUTE इंटेंट का इस्तेमाल, smart home डिवाइसों पर निर्देश देने के लिए किया जाता है.

जब उपयोगकर्ता Assistant की मदद से डिवाइसों को निर्देश भेजते हैं, तो आपके फ़ुलफ़िलमेंट को एक action.devices.EXECUTE इंटेंट मिलता है. इसमें, कार्रवाई और उन डिवाइसों के बारे में बताया जाता है जिन पर कार्रवाई करनी है. उपयोगकर्ता, Ok Google, मेरे लिविंग रूम की लाइटें चालू करें जैसे किसी कमांड का इस्तेमाल करके, किसी डिवाइस पर कोई कार्रवाई कर सकता है.

EXECUTE इंटेंट का फ़्लो डायग्राम
पांचवीं इमेज: EXECUTE इंटेंट

डिसकनेक्ट करें

action.devices.DISCONNECT इंटेंट तब ट्रिगर होता है, जब कोई उपयोगकर्ता ऐप्लिकेशन खाते को Assistant से अनलिंक करता है. इससे आपको इसकी सूचना मिलती है. action.devices.DISCONNECT इंटेंट मिलने के बाद, आपको इस उपयोगकर्ता के डिवाइसों के लिए, डिवाइस की स्थिति की जानकारी नहीं देनी चाहिए.