Enterprises: pullNotificationSet

لسحب وإرسال إشعار محدد للمؤسسات المرتبطة حساب الخدمة الذي تمت مصادقته للطلب. قد يتم ضبط الإشعار يكون فارغًا إذا لم يكن هناك أي إشعار في انتظار المراجعة.
يجب الموافقة على أي مجموعة إشعارات تم إرجاعها في غضون 20 ثانية. من خلال استدعاء Enterprises.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 مجموعة الأذونات التي يطلبها التطبيق حاليًا. استخدِم الأذونات.انتقِل إلى واجهة EMM API للاطّلاع على تفاصيل عن هذه الأذونات.
notification[].newPermissionsEvent.approvedPermissions[] list مجموعة الأذونات التي وافق عليها مشرف المؤسسة من قبل لهذا التطبيق. استخدِم Permissions.Get في واجهة برمجة التطبيقات 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 تحدِّد هذه السياسة مدى التحكُّم في الجهاز من خلال إدارة الخدمات الجوّالة للمؤسسات (EMM) لأجهزة Android في إعدادات النشر المختلفة.

تشمل القيم المحتملة ما يلي:
  • "managedDevice"، وهو جهاز تم ضبط وحدة التحكّم بسياسة الجهاز (DPC) فيه على أنّه مالك الجهاز
  • "managedProfile"، جهاز تم ضبط وحدة التحكّم بسياسة الجهاز فيه كمالك للملف الشخصي


القيم المقبولة هي:
  • "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