मूड

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

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

ये 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 इंटेंट को पूरा करने का अनुरोध भेजा जाता है. ज़्यादा जानकारी के लिए, अनुरोध सिंक करने की सुविधा लागू करना देखें.

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

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

QUERY

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

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

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

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

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

EXECUTE

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

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

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

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

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