सूचनाओं की मदद से, Cloud-to-cloud इंटिग्रेशन, Google Assistant का इस्तेमाल करके उपयोगकर्ताओं को डिवाइस से जुड़े अहम इवेंट या बदलावों के बारे में जानकारी दे सकता है. डिवाइस से जुड़ी गतिविधियों की सूचनाएं समय पर देने के लिए, सूचनाएं पाने की सुविधा लागू की जा सकती है. उदाहरण के लिए, जब कोई व्यक्ति दरवाज़े पर हो या डिवाइस की स्थिति में बदलाव करने का अनुरोध किया गया हो, जैसे कि दरवाज़े का लॉक बोल्ट सही तरीके से लग गया हो या जाम हो गया हो.
Cloud-to-cloud इंटिग्रेशन, उपयोगकर्ताओं को इस तरह की सूचनाएं भेज सकता है:
बिना मांगे सूचनाएं: इससे उपयोगकर्ता को smart home डिवाइस के किसी इवेंट की सूचना मिलती है. इसके लिए, उपयोगकर्ता को अपने डिवाइसों से कोई अनुरोध नहीं करना पड़ता. जैसे, दरवाज़े की घंटी बजना.
फ़ॉलो-अप जवाब: डिवाइस को दिए गए निर्देश के अनुरोध के पूरा होने या न होने की पुष्टि. जैसे, दरवाज़ा लॉक करने पर. इन चेतावनियों का इस्तेमाल, डिवाइस के उन निर्देशों के लिए करें जिन्हें पूरा होने में समय लगता है. फ़ॉलो-अप जवाब सिर्फ़ तब दिए जाते हैं, जब डिवाइस को निर्देश देने के अनुरोध, स्मार्ट स्पीकर और स्मार्ट डिसप्ले से भेजे जाते हैं.
Assistant, उपयोगकर्ताओं को ये सूचनाएँ स्मार्ट स्पीकर और स्मार्ट डिसप्ले पर घोषणाओं के तौर पर देता है. बिना मांगे सूचनाएं पाने की सुविधा, डिफ़ॉल्ट रूप से बंद होती है. उपयोगकर्ता, Google Home app (GHA) से बिना मांगे मिलने वाली सभी सूचनाओं को चालू या बंद कर सकते हैं.
सूचनाएं ट्रिगर करने वाले इवेंट
डिवाइस से जुड़े इवेंट होने पर, आपका फ़ुलफ़िलमेंट Google को सूचना का अनुरोध भेजता है. Cloud-to-cloud के साथ इंटिग्रेशन करने पर, डिवाइस की जिन विशेषताओं का इस्तेमाल किया जा सकता है उनसे यह तय होता है कि सूचना देने वाले किस तरह के इवेंट उपलब्ध हैं. साथ ही, यह भी तय होता है कि उन सूचनाओं में कौनसा डेटा शामिल किया जा सकता है.
इन ट्रेट के लिए, बिना मांगे सूचनाएं पाने की सुविधा उपलब्ध है:
| Trait | इवेंट |
|---|---|
| ObjectDetection | डिवाइस से पहचाने गए ऑब्जेक्ट. जैसे, दरवाज़े पर किसी जाने-पहचाने चेहरे की पहचान होने पर. उदाहरण के लिए: "अभिषेक और गुंजन सामने के दरवाज़े पर हैं." |
| RunCycle | डिवाइस का साइकल पूरा होने पर. उदाहरण के लिए: "वॉशिंग मशीन की साइकल पूरी हो गई है." |
| SensorState | डिवाइस, सेंसर की ऐसी स्थिति का पता लगाता है जो इस सुविधा के साथ काम करती है. उदाहरण के लिए: "धुएं का पता लगाने वाली मशीन, धुएं का पता लगाती है." |
इन ट्रेट के लिए, फ़ॉलो-अप जवाबों की सुविधा काम करती है:
| Trait | इवेंट |
|---|---|
| LockUnlock | action.devices.commands.LockUnlock डिवाइस कमांड के लागू होने के बाद, पूरा होने की स्थिति और स्थिति में बदलाव. उदाहरण के लिए: "सामने का दरवाज़ा लॉक कर दिया गया है" या "सामने का दरवाज़ा जाम हो गया है."
|
| NetworkControl | action.devices.commands.TestNetworkSpeed डिवाइस कमांड को लागू करने के बाद, पूरा होने की स्थिति और स्थिति में बदलाव. उदाहरण के लिए: "आपके नेटवर्क की स्पीड टेस्ट पूरी हो गई. मौजूदा समय में, ऑफ़िस के राऊटर पर डाउनलोड करने की स्पीड 80.2 केबीपीएस है. साथ ही, अपलोड करने की स्पीड 9.3 केबीपीएस है."
|
| OpenClose | action.devices.commands.OpenClose डिवाइस कमांड को लागू करने के बाद, पूरा होने की स्थिति और स्थिति में बदलाव. उदाहरण के लिए: "सामने का दरवाज़ा खुल गया है" या "सामने का दरवाज़ा नहीं खोला जा सका."
|
सभी तरह के डिवाइसों पर, लागू होने वाली विशेषताओं के लिए सूचनाएं पाने की सुविधा काम करती है.
क्लाउड-टू-क्लाउड इंटिग्रेशन के लिए सूचनाएं बनाना
इन चरणों में, अपने Cloud-to-cloud इंटिग्रेशन में सूचनाएं जोड़ें:
- Google को बताएं कि आपके smart home डिवाइस ऐप्लिकेशन से सूचनाएं पाने की सुविधा चालू है या नहीं. अगर उपयोगकर्ता आपके ऐप्लिकेशन में सूचनाएं पाने की सुविधा को चालू या बंद करते हैं, तो Google को डिवाइस में हुए बदलाव की जानकारी देने के लिए,
SYNCअनुरोध भेजें. - जब डिवाइस से जुड़ा कोई ज़रूरी इवेंट या स्थिति में बदलाव होता है, जिससे सूचना ट्रिगर होती है, तो Report State
reportStateAndNotificationएपीआई को कॉल करके सूचना का अनुरोध भेजें. अगर डिवाइस की स्थिति बदल गई है, तो अपने Report State और सूचना कॉल में, स्थिति और सूचना पेलोड, दोनों को एक साथ भेजा जा सकता है.
यहां दिए गए सेक्शन में, इन चरणों के बारे में ज़्यादा जानकारी दी गई है.
यह बताना कि आपके ऐप्लिकेशन में सूचनाएं पाने की सुविधा चालू है या नहीं
उपयोगकर्ता यह चुन सकते हैं कि उन्हें बिना मांगे सूचनाएं चाहिए या नहीं. इसके लिए, उन्हें GHA में जाकर इस सुविधा को चालू करना होगा. smart home डिवाइस के लिए बनाए गए ऐप्लिकेशन में, उपयोगकर्ताओं को डिवाइस से सूचनाएं पाने की सुविधा को चालू या बंद करने का विकल्प भी दिया जा सकता है. उदाहरण के लिए, ऐप्लिकेशन की सेटिंग में जाकर.
डिवाइस का डेटा अपडेट करने के लिए, SYNC का अनुरोध कॉल करके, Google को बताएं कि आपके डिवाइस के लिए सूचनाएं चालू हैं. जब भी उपयोगकर्ता आपके ऐप्लिकेशन में इस सेटिंग को बदलें, तब आपको इस तरह का SYNC अनुरोध भेजना चाहिए.
SYNC के जवाब में, इनमें से कोई एक अपडेट भेजें:
- अगर उपयोगकर्ता ने आपके डिवाइस ऐप्लिकेशन में सूचनाएं पाने की सुविधा को साफ़ तौर पर चालू किया है या आपने टॉगल का विकल्प नहीं दिया है, तो
devices.notificationSupportedByAgentप्रॉपर्टी कोtrueपर सेट करें. - अगर उपयोगकर्ता ने आपके डिवाइस ऐप्लिकेशन में सूचनाएं पाने की सुविधा को साफ़ तौर पर बंद किया है, तो
devices.notificationSupportedByAgentप्रॉपर्टी कोfalseपर सेट करें.
यहां दिए गए स्निपेट में, SYNC रिस्पॉन्स सेट करने का उदाहरण दिखाया गया है:
devices: [{
id: 'device123',
...
notificationSupportedByAgent: true,
}]
Google को सूचना के अनुरोध भेजना
Assistant पर सूचनाएं ट्रिगर करने के लिए, आपका फ़ुलफ़िलमेंट Report State और सूचना एपीआई कॉल के ज़रिए Google Home Graph को सूचना पेलोड भेजता है.
Google HomeGraph API को चालू करना
-
Google Cloud Console में, HomeGraph API पेज पर जाएं.
HomeGraph API पेज पर जाएं - वह प्रोजेक्ट चुनें जो आपके smart home प्रोजेक्ट आईडी से मैच करता हो.
- चालू करें पर क्लिक करें.
सेवा खाते की कुंजी बनाना
Google Cloud Console से सेवा खाते की कुंजी जनरेट करने के लिए, यह तरीका अपनाएं:
-
Google Cloud Console में, सेवा खाते पेज पर जाएं.
सर्विस खातों वाले पेज पर जाएं.सेवा खातों वाले पेज पर जाने से पहले, आपको कोई प्रोजेक्ट चुनना पड़ सकता है.
सेवा खाता बनाएं पर क्लिक करें.
सेवा खाते का नाम फ़ील्ड में, कोई नाम डालें.
सेवा खाता आईडी फ़ील्ड में, कोई आईडी डालें.
सेवा खाते की जानकारी फ़ील्ड में, जानकारी डालें.
बनाएं और जारी रखें पर क्लिक करें.
भूमिका ड्रॉपडाउन से, सेवा खाते > सेवा खाता OpenID Connect आइडेंटिटी टोकन क्रिएटर को चुनें.
जारी रखें पर क्लिक करें.
हो गया पर क्लिक करें.
सेवा खातों की सूची से, वह सेवा खाता चुनें जिसे आपने अभी-अभी बनाया है. इसके बाद, कार्रवाइयां मेन्यू से कुंजियां मैनेज करें को चुनें.
कुंजी जोड़ें > नई कुंजी बनाएं को चुनें.
कुंजी का टाइप के लिए, JSON विकल्प चुनें.
बनाएं पर क्लिक करें. आपके कंप्यूटर पर एक JSON फ़ाइल डाउनलोड होगी, जिसमें आपकी कुंजी मौजूद होगी.
सूचना भेजें
devices.reportStateAndNotification एपीआई का इस्तेमाल करके, सूचना का अनुरोध करें.
आपके JSON अनुरोध में eventId शामिल होना चाहिए. यह एक यूनीक आईडी होता है, जिसे आपका प्लैटफ़ॉर्म सूचना ट्रिगर करने वाले इवेंट के लिए जनरेट करता है. eventId, एक रैंडम आईडी होना चाहिए. यह आईडी, सूचना का अनुरोध भेजने पर हर बार अलग होना चाहिए.
एपीआई कॉल में पास किए गए notifications ऑब्जेक्ट में, priority वैल्यू शामिल करें. इससे यह तय होता है कि सूचना को किस तरह दिखाया जाना चाहिए. डिवाइस की विशेषता के आधार पर, आपके notifications ऑब्जेक्ट में अलग-अलग फ़ील्ड शामिल हो सकते हैं.
पेलोड सेट करने और एपीआई को कॉल करने के लिए, इनमें से कोई एक तरीका अपनाएं:
बिना मांगे सूचनाएं देने वाला पेलोड भेजना
एपीआई को कॉल करने के लिए, इनमें से किसी एक टैब से कोई विकल्प चुनें:
HTTP
Home Graph एपीआई, एचटीटीपी एंडपॉइंट उपलब्ध कराता है
- JSON वेब टोकन (JWT) बनाने के लिए, डाउनलोड की गई सेवा खाते की JSON फ़ाइल का इस्तेमाल करें. ज़्यादा जानकारी के लिए, सेवा खाते का इस्तेमाल करके पुष्टि करना लेख पढ़ें.
- oauth2l का इस्तेमाल करके,
https://www.googleapis.com/auth/homegraphस्कोप के साथ OAuth 2.0 का ऐक्सेस टोकन हासिल करें: agentUserIdका इस्तेमाल करके, JSON अनुरोध बनाएं. यहां Report State और सूचना के लिए, JSON अनुरोध का एक सैंपल दिया गया है:- Google Home Graph एंडपॉइंट पर किए जाने वाले एचटीटीपी पोस्ट अनुरोध में, Report State और सूचना वाले JSON और टोकन को जोड़ें. यहां एक उदाहरण दिया गया है, जिसमें टेस्ट के तौर पर
curlका इस्तेमाल करके, कमांड लाइन में अनुरोध करने का तरीका बताया गया है:
oauth2l fetch --credentials service-account.json \ --scope https://www.googleapis.com/auth/homegraph
{ "agentUserId": "PLACEHOLDER-USER-ID", "eventId": "PLACEHOLDER-EVENT-ID", "requestId": "PLACEHOLDER-REQUEST-ID", "payload": { "devices": { "notifications": { "PLACEHOLDER-DEVICE-ID": { "ObjectDetection": { "priority": 0, "detectionTimestamp": 1534875126750, "objects": { "named": [ "Alice" ], "unclassified": 2 } } } } } } }
curl -X POST -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d @request-body.json \ "https://homegraph.googleapis.com/v1/devices:reportStateAndNotification"
gRPC
Home Graph API, gRPC एंडपॉइंट उपलब्ध कराता है
- Home Graph API के लिए, प्रोटोकॉल बफ़र सेवा की परिभाषा पाएं.
- इस्तेमाल की जा सकने वाली भाषाओं में से किसी एक के लिए क्लाइंट स्टब जनरेट करने के लिए, gRPC डेवलपर के दस्तावेज़ में दिया गया तरीका अपनाएं.
- ReportStateAndNotification तरीके को कॉल करें.
Node.js
Google API Node.js क्लाइंट, Home Graph एपीआई के लिए बाइंडिंग उपलब्ध कराता है.
-
ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल का इस्तेमाल करके,
google.homegraphसेवा को शुरू करें. -
ReportStateAndNotificationRequest के साथ
reportStateAndNotificationवाले तरीके को कॉल करें. यह ReportStateAndNotificationResponse के साथPromiseदिखाता है.
const homegraphClient = homegraph({ version: 'v1', auth: new GoogleAuth({ scopes: 'https://www.googleapis.com/auth/homegraph' }) }); const res = await homegraphClient.devices.reportStateAndNotification({ requestBody: { agentUserId: 'PLACEHOLDER-USER-ID', eventId: 'PLACEHOLDER-EVENT-ID', requestId: 'PLACEHOLDER-REQUEST-ID', payload: { devices: { notifications: { 'PLACEHOLDER-DEVICE-ID': { ObjectDetection: { priority: 0, detectionTimestamp: 1534875126750, objects: { named: ['Alice'], unclassified: 2 } } } } } } } });
Java
Java के लिए HomeGraph API की क्लाइंट लाइब्रेरी, Home Graph API के लिए बाइंडिंग उपलब्ध कराती है.
- ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल का इस्तेमाल करके,
HomeGraphApiServiceको शुरू करें. ReportStateAndNotificationRequestके साथreportStateAndNotificationवाले तरीके को कॉल करें. यहReportStateAndNotificationResponseदिखाता है.
// Get Application Default credentials. GoogleCredentials credentials = GoogleCredentials.getApplicationDefault() .createScoped(List.of("https://www.googleapis.com/auth/homegraph")); // Create Home Graph service client. HomeGraphService homegraphService = new HomeGraphService.Builder( GoogleNetHttpTransport.newTrustedTransport(), GsonFactory.getDefaultInstance(), new HttpCredentialsAdapter(credentials)) .setApplicationName("HomeGraphExample/1.0") .build(); // Build device notification payload. Map<?, ?> notifications = Map.of( "ObjectDetection", Map.of( "priority", 0, "detectionTimestamp", 1534875126, "objects", Map.of("named", List.of("Alice"), "unclassifed", 2))); // Send notification. ReportStateAndNotificationRequest request = new ReportStateAndNotificationRequest() .setRequestId("PLACEHOLDER-REQUEST-ID") .setAgentUserId("PLACEHOLDER-USER-ID") .setEventId("PLACEHOLDER-EVENT-ID") .setPayload( new StateAndNotificationPayload() .setDevices( new ReportStateAndNotificationDevice() .setNotifications(Map.of("PLACEHOLDER-DEVICE-ID", notifications)))); homegraphService.devices().reportStateAndNotification(request);
फ़ॉलो-अप रिस्पॉन्स पेलोड भेजना
फ़ॉलो-अप रिस्पॉन्स के पेलोड में, अनुरोध की स्थिति और इवेंट के फ़ेल होने पर गड़बड़ी के कोड शामिल होते हैं. साथ ही, इसमें मान्य followUpToken भी शामिल होता है. यह EXECUTE इंटेंट के अनुरोध के दौरान दिया जाता है. followUpToken का इस्तेमाल पांच मिनट के अंदर किया जाना चाहिए, ताकि यह मान्य रहे और जवाब को मूल अनुरोध के साथ सही तरीके से जोड़ा जा सके.
यहां दिए गए स्निपेट में, followUpToken फ़ील्ड वाले EXECUTE अनुरोध के पेलोड का उदाहरण दिया गया है.
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"inputs": [{
"intent": "action.devices.EXECUTE",
"payload": {
"commands": [{
"devices": [{
"id": "123",
}],
"execution": [{
"command": "action.devices.commands.TestNetworkSpeed",
"params": {
"testDownloadSpeed": true,
"testUploadSpeed": false,
"followUpToken": "PLACEHOLDER"
}
}]
}]
}
}]
};
Google, followUpToken का इस्तेमाल करके सिर्फ़ उस डिवाइस पर सूचना भेजता है जिससे उपयोगकर्ता इंटरैक्ट कर रहा था. यह सूचना, उपयोगकर्ता के सभी डिवाइसों पर ब्रॉडकास्ट नहीं की जाती.
एपीआई को कॉल करने के लिए, इनमें से किसी एक टैब से कोई विकल्प चुनें:
HTTP
Home Graph एपीआई, एचटीटीपी एंडपॉइंट उपलब्ध कराता है
- JSON वेब टोकन (JWT) बनाने के लिए, डाउनलोड की गई सेवा खाते की JSON फ़ाइल का इस्तेमाल करें. ज़्यादा जानकारी के लिए, सेवा खाते का इस्तेमाल करके पुष्टि करना लेख पढ़ें.
- oauth2l का इस्तेमाल करके,
https://www.googleapis.com/auth/homegraphस्कोप के साथ OAuth 2.0 का ऐक्सेस टोकन हासिल करें: agentUserIdका इस्तेमाल करके, JSON अनुरोध बनाएं. यहां Report State और सूचना के लिए, JSON अनुरोध का एक सैंपल दिया गया है:- Google Home Graph एंडपॉइंट पर किए जाने वाले एचटीटीपी पोस्ट अनुरोध में, Report State और सूचना वाले JSON और टोकन को जोड़ें. यहां एक उदाहरण दिया गया है, जिसमें टेस्ट के तौर पर
curlका इस्तेमाल करके, कमांड लाइन में अनुरोध करने का तरीका बताया गया है:
oauth2l fetch --credentials service-account.json \ --scope https://www.googleapis.com/auth/homegraph
{ "agentUserId": "PLACEHOLDER-USER-ID", "eventId": "PLACEHOLDER-EVENT-ID", "requestId": "PLACEHOLDER-REQUEST-ID", "payload": { "devices": { "notifications": { "PLACEHOLDER-DEVICE-ID": { "NetworkControl": { "priority": 0, "followUpResponse": { "status": "SUCCESS", "followUpToken": "PLACEHOLDER", "networkDownloadSpeedMbps": 23.3, "networkUploadSpeedMbps": 10.2 } } } } } } }
curl -X POST -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d @request-body.json \ "https://homegraph.googleapis.com/v1/devices:reportStateAndNotification"
gRPC
Home Graph API, gRPC एंडपॉइंट उपलब्ध कराता है
- Home Graph API के लिए, प्रोटोकॉल बफ़र सेवा की परिभाषा पाएं.
- इस्तेमाल की जा सकने वाली भाषाओं में से किसी एक के लिए क्लाइंट स्टब जनरेट करने के लिए, gRPC डेवलपर के दस्तावेज़ में दिया गया तरीका अपनाएं.
- ReportStateAndNotification वाले तरीके को कॉल करें.
Node.js
Google API Node.js क्लाइंट, Home Graph एपीआई के लिए बाइंडिंग उपलब्ध कराता है.
-
ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल का इस्तेमाल करके,
google.homegraphसेवा को शुरू करें. - ReportStateAndNotificationRequest के साथ
reportStateAndNotificationवाले तरीके को कॉल करें. यह ReportStateAndNotificationResponse के साथPromiseदिखाता है.
const followUpToken = executionRequest.inputs[0].payload.commands[0].execution[0].params.followUpToken; const homegraphClient = homegraph({ version: 'v1', auth: new GoogleAuth({ scopes: 'https://www.googleapis.com/auth/homegraph' }) }); const res = await homegraphClient.devices.reportStateAndNotification({ requestBody: { agentUserId: 'PLACEHOLDER-USER-ID', eventId: 'PLACEHOLDER-EVENT-ID', requestId: 'PLACEHOLDER-REQUEST-ID', payload: { devices: { notifications: { 'PLACEHOLDER-DEVICE-ID': { NetworkControl: { priority: 0, followUpResponse: { status: 'SUCCESS', followUpToken, networkDownloadSpeedMbps: 23.3, networkUploadSpeedMbps: 10.2, } } } } } } } });
Java
Java के लिए HomeGraph API की क्लाइंट लाइब्रेरी, Home Graph API के लिए बाइंडिंग उपलब्ध कराती है.
-
ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल का इस्तेमाल करके,
HomeGraphApiServiceको शुरू करना ReportStateAndNotificationRequestके साथreportStateAndNotificationवाले तरीके को कॉल करें. यहReportStateAndNotificationResponseदिखाता है
// Get Application Default credentials. GoogleCredentials credentials = GoogleCredentials.getApplicationDefault() .createScoped(List.of("https://www.googleapis.com/auth/homegraph")); // Create Home Graph service client. HomeGraphService homegraphService = new HomeGraphService.Builder( GoogleNetHttpTransport.newTrustedTransport(), GsonFactory.getDefaultInstance(), new HttpCredentialsAdapter(credentials)) .setApplicationName("HomeGraphExample/1.0") .build(); // Extract follow-up token. ExecuteRequest.Inputs executeInputs = (Inputs) executeRequest.getInputs()[0]; String followUpToken = (String) executeInputs .getPayload() .getCommands()[0] .getExecution()[0] .getParams() .get("followUpToken"); // Build device follow-up response payload. Map<?, ?> followUpResponse = Map.of( "NetworkControl", Map.of( "priority", 0, "followUpResponse", Map.of( "status", "SUCCESS", "followUpToken", followUpToken, "networkDownloadSpeedMbps", 23.3, "networkUploadSpeedMbps", 10.2))); // Send follow-up response. ReportStateAndNotificationRequest request = new ReportStateAndNotificationRequest() .setRequestId("PLACEHOLDER-REQUEST-ID") .setAgentUserId("PLACEHOLDER-USER-ID") .setEventId("PLACEHOLDER-EVENT-ID") .setPayload( new StateAndNotificationPayload() .setDevices( new ReportStateAndNotificationDevice() .setNotifications(Map.of("PLACEHOLDER-DEVICE-ID", followUpResponse)))); homegraphService.devices().reportStateAndNotification(request);
लॉग इन हो रहा है
सूचनाएं, गतिविधियों का ब्यौरा लॉग करने की सुविधा के साथ काम करती हैं. इसके बारे में क्लाउड-टू-क्लाउड के लिए क्लाउड लॉगिंग में बताया गया है. ये लॉग, आपकी कार्रवाई में सूचनाओं की क्वालिटी की जांच करने और उन्हें बनाए रखने के लिए काम के होते हैं.
यहां notificationLog एंट्री का स्कीमा दिया गया है:
| प्रॉपर्टी | ब्यौरा |
|---|---|
requestId |
सूचना के अनुरोध का आईडी. |
structName |
सूचना के स्ट्रक्चर का नाम, जैसे कि "ObjectDetection". |
status |
इससे सूचना की स्थिति के बारे में पता चलता है. |
status फ़ील्ड में अलग-अलग स्टेटस शामिल होते हैं. इनसे सूचना के पेलोड में गड़बड़ियों का पता चल सकता है. इनमें से कुछ सुविधाएं सिर्फ़ उन कार्रवाइयों के लिए उपलब्ध हो सकती हैं जिन्हें प्रोडक्शन के लिए लॉन्च नहीं किया गया है.
स्टेटस के उदाहरण:
| स्थिति | ब्यौरा |
|---|---|
EVENT_ID_MISSING |
इससे पता चलता है कि ज़रूरी eventId फ़ील्ड मौजूद नहीं है.
|
PRIORITY_MISSING |
इससे पता चलता है कि priority फ़ील्ड मौजूद नहीं है.
|
NOTIFICATION_SUPPORTED_BY_AGENT_FALSE |
इससे पता चलता है कि सूचना देने वाले डिवाइस की notificationSupportedByAgent प्रॉपर्टी की वैल्यू गलत है. यह प्रॉपर्टी, SYNC में दी गई है.
|
NOTIFICATION_ENABLED_BY_USER_FALSE |
इससे पता चलता है कि उपयोगकर्ता ने GHA में, सूचना देने वाले डिवाइस पर सूचनाएं पाने की सुविधा चालू नहीं की है. यह स्टेटस सिर्फ़ उन इंटिग्रेशन के लिए उपलब्ध है जिन्हें प्रोडक्शन के लिए लॉन्च नहीं किया गया है. |
NOTIFYING_DEVICE_NOT_IN_STRUCTURE |
इससे पता चलता है कि उपयोगकर्ता ने सूचना देने वाले डिवाइस को किसी होम/स्ट्रक्चर को असाइन नहीं किया है. यह स्टेटस सिर्फ़ उन इंटिग्रेशन के लिए उपलब्ध है जिन्हें प्रोडक्शन के लिए लॉन्च नहीं किया गया है. |
सभी सूचनाओं पर लागू होने वाली इन सामान्य स्थितियों के अलावा, status फ़ील्ड में, लागू होने पर खास विशेषताओं वाली स्थितियां भी शामिल हो सकती हैं. उदाहरण के लिए, OBJECT_DETECTION_DETECTION_TIMESTAMP_MISSING.