अनुरोध के लिए पुष्टि किए गए सेवा खाते से जुड़े एंटरप्राइज़ के लिए, सूचना सेट को खींचता है और दिखाता है. सूचना सेट
अगर कोई सूचना बाकी नहीं है, तो यह फ़ील्ड खाली होगा.
अगर सूचना सेट खाली नहीं है, तो Enterprises.AcknowledgeNotificationSet को कॉल करके, रिटर्न किए गए सूचना सेट को 20 सेकंड के अंदर स्वीकार करना ज़रूरी है.
ऐसी सूचनाएं जिन्हें 20 सेकंड के अंदर स्वीकार नहीं किया जाता
आखिरकार, किसी अन्य Pullसूचनासेट के जवाब में फिर से शामिल हो जाएगी
जिनका कभी अनुरोध नहीं किया जाता और जिन अनुरोधों को कभी स्वीकार नहीं किया जाता उन्हें आखिर में मिटा दिया जाता है
Google Cloud Platform Pub/Sub सिस्टम नीति के मुताबिक होना चाहिए.
सूचनाएं पाने के लिए, एक साथ कई अनुरोध किए जा सकते हैं. ऐसे में, अगर कोई सूचना बाकी है, तो उसे हर कॉलर के बीच बांटा जाएगा.
अगर कोई सूचना मौजूद नहीं है, तो एक खाली सूचना सूची दिखती है.
बाद के अनुरोधों के लिए, ज़्यादा सूचनाएं मिल सकती हैं. ऐसा तब होता है, जब ये
उपलब्ध हैं.
अनुरोध
एचटीटीपी अनुरोध
POST https://www.googleapis.com/androidenterprise/v1/enterprises/pullNotificationSet
पैरामीटर
पैरामीटर का नाम | मान | ब्यौरा |
---|---|---|
वैकल्पिक क्वेरी पैरामीटर | ||
requestMode |
string |
सूचनाएं पाने का अनुरोध मोड.
waitForNotifications तय करने से, अनुरोध यह हो जाएगा
को ब्लॉक करें और एक या उससे ज़्यादा सूचनाओं के आने तक इंतज़ार करें या
खाली सूचना सूची दिखेगी.
returnImmediately को जोड़ने से यह अनुरोध होगा
तुरंत अधूरी सूचनाएं वापस करता है. अगर ऐसा नहीं है, तो एक खाली सूची
सूचनाएँ मौजूद हैं.
अगर यह प्रॉपर्टी शामिल नहीं की जाती है, तो डिफ़ॉल्ट रूप से waitForNotifications लागू हो जाता है.
ये वैल्यू स्वीकार की जाती हैं:
|
अनुमति देना
इस अनुरोध के लिए, नीचे दिए गए स्कोप वाले अनुमति की ज़रूरत है:
दायरा |
---|
https://www.googleapis.com/auth/androidenterprise |
ज़्यादा जानकारी के लिए, पुष्टि करने और अनुमति देने से जुड़ा पेज देखें.
अनुरोध का मुख्य भाग
इस तरीके के साथ अनुरोध का मुख्य हिस्सा न दें.
जवाब
सही तरीके से काम करने पर, यह तरीका इस स्ट्रक्चर के साथ रिस्पॉन्स का मुख्य हिस्सा दिखाता है:
{ "kind": "androidenterprise#notificationSet", "notificationSetId": string, "notification": [ { "enterpriseId": string, "timestampMillis": long, "notificationType": string, "productApprovalEvent": { "productId": string, "approved": string }, "installFailureEvent": { "productId": string, "deviceId": string, "userId": string, "failureReason": string, "failureDetails": string }, "appUpdateEvent": { "productId": string }, "newPermissionsEvent": { "productId": string, "requestedPermissions": [ string ], "approvedPermissions": [ string ] }, "appRestrictionsSchemaChangeEvent": { "productId": string }, "productAvailabilityChangeEvent": { "productId": string, "availabilityStatus": string }, "newDeviceEvent": { "userId": string, "deviceId": string, "managementType": string, "dpcPackageName": string }, "deviceReportUpdateEvent": { "userId": string, "deviceId": string, "report": { "lastUpdatedTimestampMillis": long, "appState": [ { "packageName": string, "keyedAppState": [ { "key": string, "stateTimestampMillis": long, "severity": string, "message": string, "data": string } ] } ] } } } ] }
प्रॉपर्टी का नाम | मान | ब्यौरा | नोट |
---|---|---|---|
notificationSetId |
string |
यह सूचना सेट आईडी, Enterprises.AcknowledgeNotification API के साथ सूचना को 'मिल गया' के तौर पर मार्क करने के लिए ज़रूरी है. अगर कोई सूचना नहीं मिलती है, तो इसे मिटा दिया जाएगा. | |
notification[] |
list |
मिलने वाली सूचनाएं या कोई सूचना न होने पर खाली. | |
notification[].enterpriseId |
string |
उस एंटरप्राइज़ का आईडी जिसके लिए सूचना भेजी गई है. यह हमेशा मौजूद रहेगा. | |
notification[].timestampMillis |
long |
सूचना को पब्लिश करने का समय, मिलीसेकंड में. यह समय 1970-01-01T00:00:00Z से शुरू होता है. यह हमेशा मौजूद रहेगा. | |
notification[].productApprovalEvent |
nested object |
किसी प्रॉडक्ट की समीक्षा की स्थिति में हुए बदलावों के बारे में सूचनाएं. | |
notification[].productApprovalEvent.productId |
string |
प्रॉडक्ट का आईडी (जैसे कि "app:com.google.android.gm"), जिसकी मंज़ूरी की स्थिति बदल गई है. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].productApprovalEvent.approved |
string |
प्रॉडक्ट को स्वीकार किया गया है या नहीं. यह फ़ील्ड हमेशा मौजूद रहेगा.
ये वैल्यू स्वीकार की जाती हैं:
|
|
notification[].installFailureEvent |
nested object |
ऐप्लिकेशन इंस्टॉल न होने की सूचनाएं. | |
notification[].installFailureEvent.productId |
string |
प्रॉडक्ट का आईडी (उदाहरण, "app:com.google.android.gm"), जिसके लिए इंस्टॉल नहीं हो सका. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].installFailureEvent.deviceId |
string |
डिवाइस का Android आईडी. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].installFailureEvent.userId |
string |
उपयोगकर्ता का आईडी. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].installFailureEvent.failureReason |
string |
इंस्टॉलेशन विफल होने का कारण. यह फ़ील्ड हमेशा मौजूद रहेगा.
ये वैल्यू स्वीकार की जाती हैं:
|
|
notification[].installFailureEvent.failureDetails |
string |
अगर लागू हो, तो गड़बड़ी के बारे में ज़्यादा जानकारी. | |
notification[].appUpdateEvent |
nested object |
ऐप्लिकेशन के अपडेट के बारे में सूचनाएं. | |
notification[].appUpdateEvent.productId |
string |
अपडेट किए गए प्रॉडक्ट का आईडी (उदाहरण के लिए, "app:com.google.android.gm"). यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].newPermissionsEvent |
nested object |
ऐप्लिकेशन की नई अनुमतियों के बारे में सूचनाएं. | |
notification[].newPermissionsEvent.productId |
string |
प्रॉडक्ट का आईडी (जैसे कि "app:com.google.android.gm") जिसके लिए नई अनुमतियां जोड़ी गई थीं. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].newPermissionsEvent.requestedPermissions[] |
list |
ऐप्लिकेशन, फ़िलहाल जिन अनुमतियों के लिए अनुरोध कर रहा है उनका सेट. अनुमतियां इस्तेमाल करें.इन अनुमतियों की जानकारी पाने के लिए, EMM API (एपीआई) पर जाएं. | |
notification[].newPermissionsEvent.approvedPermissions[] |
list |
अनुमतियों का वह सेट जिसे एंटरप्राइज़ एडमिन ने इस ऐप्लिकेशन के लिए पहले ही मंज़ूरी दी हुई है. अनुमतियां इस्तेमाल करें.इन अनुमतियों की जानकारी पाने के लिए, EMM API (एपीआई) पर जाएं. | |
notification[].appRestrictionsSchemaChangeEvent |
nested object |
ऐप्लिकेशन से जुड़ी पाबंदियों के स्कीमा में हुए नए बदलावों के बारे में सूचनाएं. | |
notification[].appRestrictionsSchemaChangeEvent.productId |
string |
उस प्रॉडक्ट का आईडी (उदाहरण के लिए, "app:com.google.android.gm") जिसके लिए ऐप्लिकेशन पर पाबंदी लगाने के स्कीमा में बदलाव किया गया था. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].productAvailabilityChangeEvent |
nested object |
प्रॉडक्ट की खरीदारी के लिए उपलब्धता में हुए बदलावों के बारे में सूचनाएं. | |
notification[].productAvailabilityChangeEvent.productId |
string |
प्रॉडक्ट का आईडी (उदाहरण के लिए, "app:com.google.android.gm"), जिसके लिए प्रॉडक्ट की उपलब्धता की जानकारी में बदलाव हुआ है. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].productAvailabilityChangeEvent.availabilityStatus |
string |
प्रॉडक्ट की नई स्थिति. यह फ़ील्ड हमेशा मौजूद रहेगा.
ये वैल्यू स्वीकार की जाती हैं:
|
|
notification[].newDeviceEvent |
nested object |
नए डिवाइसों के बारे में सूचनाएं. | |
notification[].newDeviceEvent.userId |
string |
उपयोगकर्ता का आईडी. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].newDeviceEvent.deviceId |
string |
डिवाइस का Android आईडी. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].newDeviceEvent.managementType |
string |
यह बताता है कि अलग-अलग डिप्लॉयमेंट कॉन्फ़िगरेशन में, Android ईएमएम से डिवाइस को किस हद तक कंट्रोल किया जाता है. संभावित वैल्यू में ये शामिल हैं:
ये वैल्यू स्वीकार की जाती हैं:
|
|
notification[].notificationType |
string |
सूचना किस तरह की है.
ये वैल्यू स्वीकार की जाती हैं:
|
|
notification[].newDeviceEvent.dpcPackageName |
string |
डिवाइस पर मौजूद नीति ऐप्लिकेशन. | |
notification[].deviceReportUpdateEvent |
nested object |
डिवाइस की रिपोर्ट के अपडेट के बारे में सूचनाएं. | |
notification[].deviceReportUpdateEvent.userId |
string |
उपयोगकर्ता का आईडी. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].deviceReportUpdateEvent.deviceId |
string |
डिवाइस का Android आईडी. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].deviceReportUpdateEvent.report |
nested object |
डिवाइस की रिपोर्ट को ऐप्लिकेशन की नई स्थितियों के साथ अपडेट किया जाता है. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].deviceReportUpdateEvent.report.lastUpdatedTimestampMillis |
long |
Epoch के बाद से, मिलीसेकंड में रिपोर्ट के आखिरी अपडेट का टाइमस्टैंप. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].deviceReportUpdateEvent.report.appState[] |
list |
ऐप्लिकेशन की उन स्थितियों की सूची जिन्हें डिवाइस पर मैनेज किए जा रहे ऐप्लिकेशन ने सेट किया है. ऐप्लिकेशन की स्थितियां, ऐप्लिकेशन के डेवलपर तय करते हैं. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].deviceReportUpdateEvent.report.appState[].packageName |
string |
ऐप्लिकेशन का पैकेज नाम. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[] |
list |
ऐप्लिकेशन की खास स्थितियों की सूची. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].key |
string |
यह बताने वाली कुंजी कि ऐप्लिकेशन किस स्थिति में काम कर रहा है. कुंजी का कॉन्टेंट, ऐप्लिकेशन के डेवलपर सेट करता है. XSS को रोकने के लिए, हमारा सुझाव है कि कुंजी दिखाने से पहले उससे एचटीएमएल को हटा दें. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].stateTimestampMillis |
long |
Epoch के बाद, मिलीसेकंड में स्थिति सेट करने के समय का टाइमस्टैंप. यह फ़ील्ड हमेशा मौजूद रहेगा. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].severity |
string |
ऐप्लिकेशन की स्थिति की गंभीरता. यह फ़ील्ड हमेशा मौजूद रहेगा.
ये वैल्यू स्वीकार की जाती हैं:
|
|
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].message |
string |
इस फ़्री फ़ॉर्म में ऐप्लिकेशन की स्थिति के बारे में जानकारी देने वाला ऐसा मैसेज होता है जिसे कोई भी व्यक्ति आसानी से पढ़ सकता है. उदाहरण के लिए, गड़बड़ी का कोई मैसेज. XSS को रोकने के लिए, हमारा सुझाव है कि मैसेज दिखाने से पहले उससे एचटीएमएल को हटा दें. | |
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].data |
string |
मशीन से पढ़े जा सकने वाले डेटा के लिए बनाया गया अतिरिक्त फ़ील्ड. उदाहरण के लिए, कोई संख्या या JSON ऑब्जेक्ट. एक्सएसएस से बचने के लिए, हमारा सुझाव है कि डेटा दिखाने से पहले उससे सभी एचटीएमएल को हटा दें. | |
kind |
string |