Enterprises: pullNotificationSet

سحب وإرجاع مجموعة إشعارات للمؤسسات المرتبطة بحساب الخدمة الذي تمت مصادقته للطلب. قد تكون مجموعة الإشعارات فارغة إذا لم يكن هناك أي إشعار في انتظار المراجعة.
يجب الإقرار بمجموع الإشعارات المعروضة خلال 20 ثانية من خلال الاتصال بالمؤسسات.AcknowledgeNotificationSet، إلا إذا كانت مجموعة الإشعارات فارغة.
في نهاية المطاف، سيتم تضمين الإشعارات التي لا يتم الإقرار بها في غضون 20 ثانية في النهاية في الرد على طلب PullNotificationSet آخر، وسيتم في النهاية حذف الإشعارات التي لم يتم الإقرار بها وفقًا لسياسة نظام النشر/الاشتراك في Google Cloud Platform.
قد يتم إجراء طلبات متعددة في وقت واحد لاسترداد الإشعارات، وفي هذه الحالة سيتم تقسيم الإشعارات المعلقة (إن وجدت) بين كل متصل، إذا كان أي منها في انتظار المراجعة.
في حال عدم ظهور أي إشعارات، سيتم عرض قائمة إشعارات فارغة. وقد تعرض الطلبات اللاحقة المزيد من الإشعارات عند توفّرها.

طلب

طلب HTTP

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 مجموعة الأذونات التي يطلبها التطبيق حاليًا. يمكنك استخدام Permissions.Get على واجهة برمجة تطبيقات EMM لاسترداد التفاصيل حول هذه الأذونات.
notification[].newPermissionsEvent.approvedPermissions[] list مجموعة الأذونات التي وافق عليها مشرف المؤسسة لهذا التطبيق. يمكنك استخدام Permissions.Get على واجهة برمجة تطبيقات EMM لاسترداد التفاصيل حول هذه الأذونات.
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 يحدِّد هذا الإعداد مدى تحكُّم "إدارة الخدمات الجوّالة للمؤسسات" (EMM) لأجهزة 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 الطابع الزمني لآخر تقرير بالمللي ثانية منذ البداية. سيكون هذا الحقل موجودًا دائمًا.
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، نوصي بإزالة أي HTML من المفتاح قبل عرضه. سيكون هذا الحقل موجودًا دائمًا.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].stateTimestampMillis long الطابع الزمني للوقت الذي عيّن فيه التطبيق الحالة بالمللي ثانية منذ البداية سيكون هذا الحقل موجودًا دائمًا.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].severity string درجة خطورة حالة التطبيق. سيكون هذا الحقل موجودًا دائمًا.

القيم المقبولة هي:
  • "severityError"
  • "severityInfo"
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].message string رسالة حرة يمكن قراءتها ويمكن للمستخدمين قراءتها تصف حالة التطبيق. على سبيل المثال، رسالة خطأ. لمنع XSS، نوصي بإزالة أي HTML من الرسالة قبل عرضها.
notification[].deviceReportUpdateEvent.report.appState[].keyedAppState[].data string حقل إضافي مخصص للبيانات التي يستطيع الجهاز قراءتها. على سبيل المثال، رقم أو كائن JSON. لمنع XSS، نوصي بإزالة أي HTML من البيانات قبل عرضه.
kind string