تشغيل الإشعارات الفورية

الإشعارات التي يتم تشغيلها من قِبل الشريك

إضافة رسالة وإرسال إشعار

الخلفية

بعد أن يضيف المستخدم بطاقة، قد تحتاج إلى إرسال رسالة إليه بشأن البطاقة والتأكّد من تلقّيه إشعارًا بشأنها. عند استخدام طلب Add Message API مع message_type يساوي TEXT_AND_NOTIFY، يحدث ما يلي:

  1. تتم إضافة عنصر رسالة إلى "خلف البطاقة" (المعروف أيضًا باسم نموذج التفاصيل)، ويتم إرسال إشعار فوري إلى المستخدمين الذين حفظوا البطاقة.
  2. بعد أن ينقر المستخدم على الإشعار، سيتم فتح "محفظة Google" في مقدّمة البطاقة (أي "عرض البطاقة")، وسيظهر للمستخدم وسيلة شرح في أعلى الشاشة تتضمّن زر "عرض الرسالة".
  3. سيؤدي النقر على وسيلة الشرح إلى نقل المستخدمين إلى الجهة الخلفية من البطاقة، حيث يتم تمييز الرسائل الجديدة غير المقروءة.

بعض الاعتبارات عند إرسال رسائل تتضمّن إشعارات إلى المستخدمين

  • يجب أن يفعّل المستخدمون الإشعارات لبطاقاتهم كي يتلقّوا الإشعارات الفورية المتعلقة بالرسائل.
  • قد تحتوي الرسائل على معرّفات موارد موحّدة (URI) لموقعك الإلكتروني أو تطبيقك. يجب أن تكون الروابط التشعبية عبارة عن موقع إلكتروني أو تطبيق ذي صلة بالتذكرة. ويُعدّ توجيه المستخدمين إلى روابط غير مرتبطة بالبطاقة انتهاكًا لسياسة الاستخدام المقبول.
  • يمكنك إرسال 3 رسائل كحدّ أقصى تؤدي إلى ظهور إشعار فوري خلال فترة 24 ساعة. قد تحدّ Google من حصة تسليم الإشعارات الفورية إذا تبيّن لها أنّك ترسل رسائل غير مرغوب فيها إلى المستخدمين.
  • تتحكّم خدمة "محفظة Google" في الإشعارات الفورية التي تظهر للمستخدمين على شاشة القفل.
  • يمكنك استخدام طريقتَي UPDATE أو PATCH لتعديل بيانات الرسائل أو إزالتها باستخدام نقطة النهاية العادية للفئة أو العنصر.

خطوات الدمج

عندما تريد إرسال إشعار إلى المستخدمين بشأن رسالة جديدة من جهة إصدار البطاقة تمت إضافتها باستخدام واجهة برمجة التطبيقات AddMessage، عليك تعديل AddMessageRequest لكي يتضمّن Message الذي يحتوي على النص الجديد MessageType TEXT_AND_NOTIFY بدلاً من TEXT.

مثال على طلب JSON لإضافة رسالة وإرسال إشعار في فئة بطاقات

  
  "id": ISSUER_ID.CLASS_ID",
  "message":
    {
        "header":"My Class message header",
        "body": "My Class message body with a <a href="https://wallet.google">Hyperlink<\a>",
        "id": "message_id",
        "message_type": "TEXT_AND_NOTIFY"
    },
  

مثال على طلب JSON لإضافة رسالة وإرسال إشعار في عنصر "بطاقات"

  
  "id": OBJECT_ID",
  "classId": "ISSUER_ID.CLASS_ID",
  "message":
    {
        "header":"My Object message header",
        "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>",
        "id": "message_id",
        "message_type": "TEXT_AND_NOTIFY"
    },
  

مثال على الردّ لإضافة رسالة وإرسال إشعار بشأن بطاقة صف

  // The updated resource
      {
      "kind": "walletobjects#walletObjectMessage",
      "header": "My Object message header",
      "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>",
      "id": "message_id",
      "messageType": "textAndNotify"
    },
  

التعامل مع الاستثناءات

ستؤدي أي محاولات لإرسال إشعارات أكثر من 3 مرات إلى ظهور الرد QuotaExceededException . يمكن ضبط أي تعديلات أخرى على البطاقة باستخدام TEXT بدلاً من TEXT_AND_NOTIFY كما هو موضّح في خطوات الدمج.

إشعارات بشأن الأجهزة المجاورة

ستعرض هذه الميزة إشعارًا فوريًا للمستخدمين الذين فعّلوا الإشعارات ومنحوا تطبيق Google Wallet إذنًا بالوصول إلى الموقع الجغرافي الدقيق دائمًا، وذلك لتذكيرهم بأنّهم حفظوا بطاقة ذات صلة بموقعهم الجغرافي الحالي.

خطوات الدمج

كيفية الاستخدام

لاستخدام هذه الميزة، عليك إضافة مواقع جغرافية إلى صفوفك وكائناتك. يمكنك إضافة ما يصل إلى 10 مواقع جغرافية لكل فئة و10 لكل عنصر. استخدِم MerchantLocations في تعريف الصف أو العنصر. يمكنك إضافة هذه المواقع الجغرافية عند استخدام الطرق insert أو patch أو update.

بعد إضافة مواقع جغرافية إلى صف أو عنصر، سترسل Google إشعارات إلى المستخدمين عندما يكونون بالقرب من هذه المواقع. تحدّد Google مدى قرب المستخدم من الجهاز ومدة بقائه في المنطقة قبل إرسال الإشعار. تتحكّم Google أيضًا في نص الإشعار.

مثال على LoyaltyClass مع ضبط MerchantLocations:
{
  "kind": "walletobjects#loyaltyClass",
  "programLogo": {
  "kind": "walletobjects#image",
  "sourceUri": {
    "uri":
    ...
  }
  },
  "localizedProgramName": {
    "kind": "walletobjects#localizedString",
    "defaultValue": {
      "kind": "walletobjects#translatedString",
      "language": "en",
      "value": "Program Name",
    }
  },
  "id": Id1234,
  "version": "1",
  "allowMultipleUsersPerObject": true,
  "reviewStatus": "underReview",
  "enableSmartTap": false,
  "localizedIssuerName": {
    "kind": "walletobjects#localizedString",
    "defaultValue": {
      "kind": "walletobjects#translatedString",
      "language": "en",
      "value": "Issuer Name"
    }
  },
  "multipleDevicesAndHoldersAllowedStatus": "multipleHolders",
  "merchantLocations": [
    {
      "latitude": 37.79020867928078,
      "longitude": -122.39004
    },
    {
      "latitude": 37.42587,
      "longitude": -122.08620
    },
  ]
}

السلوك المتوقّع

يجب أن يتلقّى المستخدمون إشعارات ثابتة بشأن بطاقاتهم عندما يكونون في أحد MerchantLocations المحدّدة. إذا نقر المستخدم على الإشعار، سيتم فتح بطاقته في "محفظة Google". يمكن للمستخدمين إغلاق الإشعار باستخدام إيماءة التمرير السريع. عندما يغادر المستخدم الموقع الجغرافي، سيختفي الإشعار.