تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
لتذكير المستخدمين بالاستفادة من العروض قبل انتهاء صلاحيتها، يتم تشغيل إشعار تلقائي بعد 48 ساعة.
قبل انتهاء صلاحية العرض. لتشغيل إشعار، يجب أن يستوفي العرض المعايير التالية:
ويجب ألا تكون قد شغّلت إشعار انتهاء الصلاحية على جهاز المستخدم في السابق
يجب أن يحتوي على تاريخ انتهاء صلاحية صالح للسمة datetime يقع في المستقبل، وتم ضبطه في
validTimeInterval.end.date
يجب ألا يتم ضبط الحقل القابل للكتابة disableExpirationNotification على
True يتم ضبط هذا الحقل تلقائيًا على false.
تعرض لقطة الشاشة التالية مثالاً على الإشعار التلقائي غير القابل للتعديل:
تنتهي صلاحية العرض (اليوم، غدًا، بعد [x] يوم)
class.title
class.titleImage
لا يمكن تخصيص العنوان في إشعار انتهاء صلاحية العرض.
ساعات الحجب
في حال ضبط إشعار انتهاء صلاحية العرض على الساعة بين الساعة 10 مساءً و6 صباحًا بالتوقيت المحلي للمستخدم
تظهر إما قبل هذه الفترة الزمنية أو بعدها.
وقت الإشعار بانتهاء صلاحية العرض المخصّص
يمكنك تخصيص وقت ظهور إشعار انتهاء صلاحية Offer باستخدام
حقل message.displayInterval.start.date على OfferObjects أو
OfferClasses إذا تمّ ضبط وقت مخصّص للإشعارات، سيتمّ عرض إشعار انتهاء الصلاحية.
وفقًا لـ message.displayInterval.start.date، بدلاً من المنطق التلقائي
يتم احتسابها من validTimeInterval.end.date. وفي ما يلي عينة من نموذج
الوقت لإشعار انتهاء الصلاحية:
ويضبط displayInterval.start.date وقت ظهور الإشعار. يمكن أن تكون
قبل تاريخ انتهاء الصلاحية بمدة تصل إلى 30 يومًا إذا تم تحديد مدى زمني أكبر من ذلك،
إلى الظهور بعد 30 يومًا. لا تتطلب هذه الرسالة حقلاً للعنوان والنص الأساسي
وإذا تم تضمينها، لن يتم استخدامها.
تاريخ التعديل الأخير: 2025-08-29 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-08-29 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eOffers trigger an expiration notification 48 hours before expiry if they have a future expiration date, haven't previously triggered a notification, and don't have \u003ccode\u003edisableExpirationNotification\u003c/code\u003e set to \u003ccode\u003eTrue\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe default notification displays the offer's title, title image, and relative expiration time (today, tomorrow, or in x days).\u003c/p\u003e\n"],["\u003cp\u003eNotifications are prevented from appearing between 10 PM and 6 AM local time, shifting to before or after this window.\u003c/p\u003e\n"],["\u003cp\u003eCustom notification times can be set using \u003ccode\u003emessage.displayInterval.start.date\u003c/code\u003e, overriding the default 48-hour trigger and allowing scheduling up to 30 days before expiry.\u003c/p\u003e\n"],["\u003cp\u003eOnly one expiration notification is sent per offer; a custom notification time prevents the default notification from triggering.\u003c/p\u003e\n"]]],["Offers trigger an expiration notification 48 hours before expiring, provided they haven't previously triggered one, have a valid future expiration date, and don't have `disableExpirationNotification` set to `True`. Notifications display the expiration time, `class.title`, and `class.titleImage`. Blackout hours (10 PM - 6 AM) shift notifications. Custom notification times, defined by `message.displayInterval.start.date`, override the default and can be set up to 30 days before expiration. Only one expiration notification is sent per offer.\n"],null,["# Offer expiration notifications\n\nTo remind users to use offers before they expire, a default notification is triggered 48 hours\nbefore an offer expires. To trigger a notification, an offer must meet the following criteria:\n\n1. It must not have previously triggered an expiration notification on the user's device.\n2. It must have a valid expiration `datetime` that's in the future, set in `validTimeInterval.end.date`.\n3. It must not have the writeable field `disableExpirationNotification` set to `True`. By default, this field is set to `false`.\n\n| **Note:** This offer expiration notification feature and its details are subject to change.\n\nThe following screenshot shows an example of the default, unmodifiable notification:\n1. Offer expires (today, tomorrow, in \\[x\\] days)\n2. `class.title`\n3. `class.titleImage`\n\nThe header in the offer expiration notification cannot be customized.\n\n### Blackout hours\n\nIf the offer expiration notification is set to appear between 10PM and 6AM at the user's local\ntime, the offer appears either before or after this time period.\n\n### Custom offer expiration notification time\n\nYou can customize when the `Offer` expiration notification appears using the\n`message.displayInterval.start.date` field on `OfferObjects` or\n`OfferClasses`. If a custom notification time is set, the expiration notification triggers\naccording to the `message.displayInterval.start.date`, instead of the default logic\ncalculated from `validTimeInterval.end.date`. The following is a sample of a customized\ntime for an expiration notification: \n\n```scdoc\n{\n \"message\": {\n \"messageType\": \"EXPIRATION_NOTIFICATION\",\n \"displayInterval\": {\n \"start\": {\n \"date\": datetime\n }\n }\n }\n}\n```\n\nThe `displayInterval.start.date` sets the time the notification appears. It can be\nset up to 30 days prior to the expiration date. If a time span greater than this is specified, the\nnotification triggers at the 30 day mark. This message doesn't require a header and body field -\nif they're included they aren't used.\n| **Note:** Only one expiration notification is sent to the user. Setting a custom offer expiration time means the default one isn't triggered."]]