Enterprises: pullNotificationSet

अनुरोध के लिए पुष्टि किए गए सेवा खाते से जुड़े एंटरप्राइज़ के लिए, सूचना सेट को खींचता है और दिखाता है. सूचना सेट अगर कोई सूचना बाकी नहीं है, तो यह फ़ील्ड खाली होगा.
अगर सूचना सेट खाली नहीं है, तो Enterprises.AcknowledgeNotificationSet को कॉल करके, रिटर्न किए गए सूचना सेट को 20 सेकंड के अंदर स्वीकार करना ज़रूरी है.
ऐसी सूचनाएं जिन्हें 20 सेकंड के अंदर स्वीकार नहीं किया जाता आखिरकार, किसी अन्य Pullसूचनासेट के जवाब में फिर से शामिल हो जाएगी जिनका कभी अनुरोध नहीं किया जाता और जिन अनुरोधों को कभी स्वीकार नहीं किया जाता उन्हें आखिर में मिटा दिया जाता है Google Cloud Platform Pub/Sub सिस्टम नीति के मुताबिक होना चाहिए.
सूचनाएं पाने के लिए, एक साथ कई अनुरोध किए जा सकते हैं. ऐसे में, अगर कोई सूचना बाकी है, तो उसे हर कॉलर के बीच बांटा जाएगा.
अगर कोई सूचना मौजूद नहीं है, तो एक खाली सूचना सूची दिखती है. बाद के अनुरोधों के लिए, ज़्यादा सूचनाएं मिल सकती हैं. ऐसा तब होता है, जब ये उपलब्ध हैं.

अनुरोध

एचटीटीपी अनुरोध

POST https://www.googleapis.com/androidenterprise/v1/enterprises/pullNotificationSet

पैरामीटर

पैरामीटर का नाम मान ब्यौरा
वैकल्पिक क्वेरी पैरामीटर
requestMode string सूचनाएं पाने का अनुरोध मोड.
waitForNotifications तय करने से, अनुरोध यह हो जाएगा को ब्लॉक करें और एक या उससे ज़्यादा सूचनाओं के आने तक इंतज़ार करें या खाली सूचना सूची दिखेगी.
returnImmediately को जोड़ने से यह अनुरोध होगा तुरंत अधूरी सूचनाएं वापस करता है. अगर ऐसा नहीं है, तो एक खाली सूची सूचनाएँ मौजूद हैं.
अगर यह प्रॉपर्टी शामिल नहीं की जाती है, तो डिफ़ॉल्ट रूप से 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 प्रॉडक्ट को स्वीकार किया गया है या नहीं. यह फ़ील्ड हमेशा मौजूद रहेगा.

ये वैल्यू स्वीकार की जाती हैं:
  • "approved"
  • "unapproved"
  • "unknown"
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 इंस्टॉलेशन विफल होने का कारण. यह फ़ील्ड हमेशा मौजूद रहेगा.

ये वैल्यू स्वीकार की जाती हैं:
  • "timeout"
  • "unknown"
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 प्रॉडक्ट की नई स्थिति. यह फ़ील्ड हमेशा मौजूद रहेगा.

ये वैल्यू स्वीकार की जाती हैं:
  • "available"
  • "removed"
  • "unknown"
  • "unpublished"
notification[].newDeviceEvent nested object नए डिवाइसों के बारे में सूचनाएं.
notification[].newDeviceEvent.userId string उपयोगकर्ता का आईडी. यह फ़ील्ड हमेशा मौजूद रहेगा.
notification[].newDeviceEvent.deviceId string डिवाइस का Android आईडी. यह फ़ील्ड हमेशा मौजूद रहेगा.
notification[].newDeviceEvent.managementType string यह बताता है कि अलग-अलग डिप्लॉयमेंट कॉन्फ़िगरेशन में, Android ईएमएम से डिवाइस को किस हद तक कंट्रोल किया जाता है.

संभावित वैल्यू में ये शामिल हैं:
  • "managedDevice", एक ऐसा डिवाइस जिसमें DPC को डिवाइस के मालिक के तौर पर सेट किया गया है,
  • "managedProfile", एक ऐसा डिवाइस है जिसमें DPC को प्रोफ़ाइल के मालिक के तौर पर सेट किया गया है.


ये वैल्यू स्वीकार की जाती हैं:
  • "managedDevice"
  • "managedProfile"
notification[].notificationType string सूचना किस तरह की है.

ये वैल्यू स्वीकार की जाती हैं:
  • "appRestricionsSchemaChange"
  • "appUpdate"
  • "deviceReportUpdate"
  • "installFailure"
  • "newDevice"
  • "newPermissions"
  • "productApproval"
  • "productAvailabilityChange"
  • "testNotification"
  • "unknown"
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 ऐप्लिकेशन की स्थिति की गंभीरता. यह फ़ील्ड हमेशा मौजूद रहेगा.

ये वैल्यू स्वीकार की जाती हैं:
  • "severityError"
  • "severityInfo"
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].message string इस फ़्री फ़ॉर्म में ऐप्लिकेशन की स्थिति के बारे में जानकारी देने वाला ऐसा मैसेज होता है जिसे कोई भी व्यक्ति आसानी से पढ़ सकता है. उदाहरण के लिए, गड़बड़ी का कोई मैसेज. XSS को रोकने के लिए, हमारा सुझाव है कि मैसेज दिखाने से पहले उससे एचटीएमएल को हटा दें.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].data string मशीन से पढ़े जा सकने वाले डेटा के लिए बनाया गया अतिरिक्त फ़ील्ड. उदाहरण के लिए, कोई संख्या या JSON ऑब्जेक्ट. एक्सएसएस से बचने के लिए, हमारा सुझाव है कि डेटा दिखाने से पहले उससे सभी एचटीएमएल को हटा दें.
kind string