सूचनाओं की मदद से, smart home Action का इस्तेमाल Google Assistant किया जा सकता है. इससे लोगों को डिवाइस से जुड़े अहम इवेंट या बदलावों के बारे में जानकारी मिलती है. समय पर डिवाइस से जुड़ी गतिविधियों की सूचना देने के लिए, उपयोगकर्ताओं को सूचनाएं दी जा सकती हैं. उदाहरण के लिए, जब कोई व्यक्ति दरवाज़े पर हो या डिवाइस की स्थिति में बदलाव का अनुरोध किया गया हो, जैसे कि दरवाज़े का लॉक बोल्ट पूरा होने या उसके जाम होने पर.
आपकी smart home कार्रवाई, उपयोगकर्ताओं को इस तरह की सूचनाएं भेज सकती है:
सक्रिय सूचनाएं: इससे उपयोगकर्ता के डिवाइस पर किसी smart home डिवाइस इवेंट के बारे में सूचना मिलती है. इसके लिए, उपयोगकर्ता के डिवाइस से उसका अनुरोध नहीं किया जाता. जैसे, दरवाज़े की घंटी बजने की सूचना.
फ़ॉलो-अप के जवाब: इस बात की पुष्टि करना कि डिवाइस को कोई निर्देश देने का अनुरोध पूरा हुआ या नहीं. उदाहरण के लिए, दरवाज़े को लॉक करते समय. इन अलर्ट का इस्तेमाल डिवाइस के उन निर्देशों के लिए करें जिन्हें पूरा होने में समय लगता है. फ़ॉलो-अप जवाब सिर्फ़ तब काम करते हैं, जब डिवाइस को निर्देश देने के अनुरोध स्मार्ट स्पीकर और स्मार्ट डिसप्ले से भेजे जाते हैं.
Assistant, उपयोगकर्ताओं को ये सूचनाएं स्मार्ट स्पीकर और स्मार्ट डिसप्ले पर, एलान के तौर पर उपलब्ध कराता है. पहले से तैयार सूचनाएं डिफ़ॉल्ट रूप से बंद रहती हैं. उपयोगकर्ता Google Home app (GHA) की ओर से, अपने-आप मिलने वाली सभी सूचनाएं चालू या बंद कर सकते हैं.
सूचनाएं ट्रिगर करने वाले इवेंट
डिवाइस पर कोई इवेंट होने पर, आपकी सेट की गई कार्रवाई को पूरा करने के बाद, Google को इसकी सूचना देने का अनुरोध भेजा जाता है. डिवाइस की खासियत यह है कि आपकी smart home कार्रवाई से यह तय होता है कि किस तरह की सूचना से जुड़े इवेंट उपलब्ध हैं और उन सूचनाओं में कौनसा डेटा शामिल किया जा सकता है.
यहां दी गई सुविधाएं, अपने-आप मिलने वाली सूचनाओं की सुविधा देती हैं:
विशेषता | इवेंट |
---|---|
ObjectDetection | डिवाइस ने जिन चीज़ों की पहचान की है, जैसे कि दरवाज़े पर किसी चेहरे की पहचान होना. उदाहरण के लिए: "ऐलिस और बॉब सामने के दरवाज़े पर हैं." |
RunCycle | डिवाइस एक साइकल पूरा करता है. उदाहरण के लिए: "वॉशिंग मशीन का साइकल पूरा हो गया है." |
SensorState | डिवाइस काम करने वाले सेंसर की स्थिति का पता लगाता है. उदाहरण के लिए: "धुएं का पता लगाने वाले डिवाइस ने धुएं का पता लगाया है." |
TemperatureControl | डिवाइस, सेट किए गए तापमान तक पहुंच गया है. उदाहरण के लिए: "अवन को पहले से ही 350 डिग्री तक गर्म कर दिया गया है." |
ArmDisarm | सिस्टम, अलार्म के शुरू होने से पहले की स्थिति में आता है. इसके लिए, एक एंट्री काउंटडाउन शुरू होता है, जो दरवाज़ा खुले होने की वजह से ट्रिगर होता है. |
CameraStream | डिवाइस को किसी ऑब्जेक्ट या मोशन का पता चलने पर, कैमरे की लाइव स्ट्रीम से लिंक करें. |
MotionDetection | "1 जुलाई, 2020 को दोपहर 12 बजे मोशन का पता चला." |
यहां दिए गए एट्रिब्यूट से फ़ॉलो-अप वाले रिस्पॉन्स मिलते हैं:
विशेषता | इवेंट |
---|---|
ArmDisarm | action.devices.commands.ArmDisarm डिवाइस निर्देश के चलने के बाद, पूरा होने की स्थिति और स्थिति में बदलाव. उदाहरण के लिए:
"सुरक्षा सिस्टम चालू कर दिया गया है."
|
LockUnlock | action.devices.commands.LockUnlock डिवाइस निर्देश के चलने के बाद, पूरा होने की स्थिति और स्थिति में बदलाव. उदाहरण के लिए: "सामने का दरवाज़ा बंद हो गया है" या "सामने का दरवाज़ा जाम है."
|
NetworkControl | action.devices.commands.TestNetworkSpeed डिवाइस निर्देश के चलने के बाद, पूरा होने की स्थिति और स्थिति में बदलाव. उदाहरण के लिए: "आपके नेटवर्क की स्पीड की जांच पूरी हो गई है. फ़िलहाल, ऑफ़िस के राऊटर पर डाउनलोड करने की रफ़्तार 80.2 केबीपीएस है और अपलोड करने की रफ़्तार 9.3 केबीपीएस है."
|
OpenClose | action.devices.commands.OpenClose डिवाइस निर्देश के चलने के बाद, पूरा होने की स्थिति और स्थिति में बदलाव. उदाहरण के लिए: "सामने का दरवाज़ा खुला है" या "सामने का दरवाज़ा खोला नहीं जा सका."
|
StartStop | action.devices.commands.StartStop डिवाइस निर्देश के चलने के बाद, पूरा होने की स्थिति और स्थिति में बदलाव. उदाहरण के लिए: " वैक्यूम क्लीनर चालू हो गया था."
|
सभी डिवाइस टाइप में, ज़रूरी traits से जुड़ी सूचनाएं काम करती हैं.
स्मार्ट होम ऐक्शन के लिए सूचनाएं बनाना
अपनी smart home कार्रवाई में सूचनाएं इन चरणों में जोड़ें:
- Google को बताएं कि
आपके smart home डिवाइस ऐप्लिकेशन से सूचनाएं पाने की सुविधा चालू है या नहीं. अगर उपयोगकर्ता आपके ऐप्लिकेशन में
सूचनाएं पाने की सुविधा चालू या बंद करते हैं, तो Google को डिवाइस में हुए बदलाव की जानकारी देने के लिए
SYNC
का अनुरोध करें. - अगर डिवाइस पर कोई ऐसा इवेंट या स्थिति में बदलाव होता है जिसकी वजह से कोई सूचना ट्रिगर होती है, तो Report State
reportStateAndNotification
एपीआई को कॉल करके सूचना का अनुरोध भेजें. डिवाइस की स्थिति में बदलाव होने पर, Report State और सूचना कॉल में स्थिति और नोटिफ़िकेशन पेलोड, दोनों को एक साथ भेजा जा सकता है.
इन सेक्शन में इन चरणों के बारे में ज़्यादा जानकारी दी गई है.
बताएं कि आपके ऐप्लिकेशन में सूचनाएं पाने की सुविधा चालू है या नहीं
GHA में इस सुविधा को चालू करके, उपयोगकर्ता यह चुन सकते हैं कि उन्हें अपने-आप मिलने वाली सूचनाएं चाहिए या नहीं. अपने smart home डिवाइस के ऐप्लिकेशन में, उपयोगकर्ताओं के लिए डिवाइस की सूचनाओं को साफ़ तौर पर टॉगल करने की सुविधा भी जोड़ी जा सकती है. उदाहरण के लिए, आपके ऐप्लिकेशन की सेटिंग से.
डिवाइस डेटा अपडेट करने के लिए
सिंक करने का अनुरोध करें कॉल करें और Google को बताएं कि आपके डिवाइस पर सूचनाएं पाने की सुविधा चालू है. जब भी लोग आपके ऐप्लिकेशन में इस सेटिंग को बदलें, तो आपको इस तरह का SYNC
अनुरोध भेजना चाहिए.
अपने SYNC
जवाब में, इनमें से कोई एक अपडेट भेजें:
- अगर उपयोगकर्ता ने आपके डिवाइस ऐप्लिकेशन में, सूचनाएं पाने की सुविधा को चालू किया है या टॉगल करने का विकल्प नहीं दिया है, तो
devices.notificationSupportedByAgent
प्रॉपर्टी कोtrue
पर सेट करें. - अगर उपयोगकर्ता ने आपके डिवाइस ऐप्लिकेशन में, सूचनाओं को बंद कर दिया है, तो
devices.notificationSupportedByAgent
प्रॉपर्टी कोfalse
पर सेट करें.
नीचे दिया गया स्निपेट, सिंक का जवाब सेट करने का तरीका दिखाता है:
devices: [{
id: 'device123',
...
notificationSupportedByAgent: true,
}]
Google को सूचना के अनुरोध भेजें
Assistant पर सूचनाएं ट्रिगर करने के लिए, आपका फ़ुलफ़िलमेंट Report State और Notification API कॉल के ज़रिए, Google Home Graph को सूचना पेलोड भेजता है.
Google HomeGraph एपीआई को चालू करें
-
Google Cloud Console में, HomeGraph एपीआई पेज पर जाएं.
HomeGraph API पेज पर जाएं - वह प्रोजेक्ट चुनें जो आपके smart home प्रोजेक्ट आईडी से मेल खाता हो.
- चालू करें पर क्लिक करें.
सेवा खाता कुंजी बनाएं
Google Cloud Console से सेवा खाता कुंजी जनरेट करने के लिए, इन निर्देशों का पालन करें:
-
Google Cloud Console में, सेवा खाता कुंजी बनाएं पेज पर जाएं.
'सेवा खाता बनाएं' पेज पर जाएं - सेवा खाते की सूची से, नया सेवा खाता चुनें.
- सेवा खाते का नाम फ़ील्ड में, कोई नाम डालें.
- सेवा खाता आईडी फ़ील्ड में, कोई आईडी डालें.
भूमिका की सूची में, सेवा खाते > सेवा खाता टोकन क्रिएटर चुनें.
कुंजी टाइप के लिए, 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 ग्राफ़ के एंडपॉइंट में, Report State और Notification 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 एपीआई एक gRPC एंडपॉइंट उपलब्ध कराता है
- Home Graph एपीआई के लिए, प्रोटोकॉल बफ़र की सेवा की परिभाषा जानें.
- इस्तेमाल की जा सकने वाली भाषाओं में से किसी एक के लिए क्लाइंट स्टब जनरेट करने के लिए, gRPC डेवलपर दस्तावेज़ का पालन करें.
- reportStateAndNotifications वाले तरीके को कॉल करें.
Node.js
Google API Node.js क्लाइंट Home Graph एपीआई के लिए बाइंडिंग उपलब्ध कराता है.
- ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल का इस्तेमाल करके,
google.homegraph
सेवा को शुरू करें. - ReportStateAndNotificationsRequest की मदद से,
reportStateAndNotification
तरीके को कॉल करें. यह reportStateAndNotificationsResponse के साथ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 एपीआई क्लाइंट लाइब्रेरी, Home Graph एपीआई के लिए बाइंडिंग उपलब्ध कराती है.
- ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल का इस्तेमाल करके,
HomeGraphApiService
को शुरू करें. reportStateAndNotification
वाले तरीके कोReportStateAndNotificationRequest
से कॉल करें. यह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);
फ़ॉलो-अप रिस्पॉन्स पेलोड भेजें
फ़ॉलो-अप जवाब के लिए पेलोड में अनुरोध की स्थिति, लागू न होने वाले इवेंट के लिए गड़बड़ी कोड, और EXECUTE
इंटेंट अनुरोध के दौरान मिले मान्य followUpToken
शामिल होते हैं. मान्य बने रहने और रिस्पॉन्स को मूल अनुरोध से सही तरीके से जोड़ने के लिए, 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 ग्राफ़ के एंडपॉइंट में, Report State और Notification 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 एपीआई, एक gRPC एंडपॉइंट उपलब्ध कराता है
- Home Graph एपीआई के लिए, प्रोटोकॉल बफ़र की सेवा की परिभाषा जानें.
- इस्तेमाल की जा सकने वाली भाषाओं में से किसी एक के लिए क्लाइंट स्टब जनरेट करने के लिए, gRPC डेवलपर दस्तावेज़ का पालन करें.
- reportStateAndNotifications वाले तरीके को कॉल करें.
Node.js
Google API Node.js क्लाइंट Home Graph एपीआई के लिए बाइंडिंग उपलब्ध कराता है.
- ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल का इस्तेमाल करके,
google.homegraph
सेवा को शुरू करें. - ReportStateAndNotificationsRequest की मदद से,
reportStateAndNotification
तरीके को कॉल करें. यह reportStateAndNotificationsResponse के साथ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 एपीआई क्लाइंट लाइब्रेरी, Home Graph एपीआई के लिए बाइंडिंग उपलब्ध कराती है.
- ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल का इस्तेमाल करके,
HomeGraphApiService
को शुरू करें reportStateAndNotification
वाले तरीके कोReportStateAndNotificationRequest
से कॉल करें. यह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 |
इससे पता चलता है कि SYNC में दी गई सूचना देने वाली डिवाइस की notificationSupportedByAgent प्रॉपर्टी 'गलत है' पर सेट है.
|
NOTIFICATION_ENABLED_BY_USER_FALSE |
इससे पता चलता है कि उपयोगकर्ता ने GHA में, सूचना देने वाले डिवाइस पर सूचनाएं पाने की सुविधा चालू नहीं की है. यह स्थिति सिर्फ़ उन कार्रवाइयों पर उपलब्ध होती है जिन्हें प्रोडक्शन के लिए लॉन्च नहीं किया गया है. |
NOTIFYING_DEVICE_NOT_IN_STRUCTURE |
इससे पता चलता है कि उपयोगकर्ता ने सूचना देने वाला डिवाइस, होम/स्ट्रक्चर को असाइन नहीं किया है. यह स्थिति सिर्फ़ उन कार्रवाइयों पर उपलब्ध होती है जिन्हें प्रोडक्शन के लिए लॉन्च नहीं किया गया है. |
सभी सूचनाओं पर लागू हो सकने वाली इन सामान्य स्थितियों के अलावा, status
फ़ील्ड में trait से जुड़ी खास स्थितियां भी शामिल हो सकती हैं. ऐसा जहां भी लागू हो (जैसे, OBJECT_DETECTION_DETECTION_TIMESTAMP_MISSING
).