Device triggers are messages that are sent to device when user does a trigger event. Messages are served only to device from which trigger event is happening and are served in real time.
These messages can be triggered only for User Actions tracked on SDK end i.e. you won’t be able to trigger basis Server to Server events or events derived by MoEngage at their backend.
While creating the campaign, you will come across these Delivery Control methods:
- Maximum times to show the message from same campaign - Limits the number of times a message is shown in customer's lifetime . Reset when device's cache is clear or app in reinstalled. This setting won’t be applied if set to zero i.e. message can be shown infinite number of times (until it satisfies other control conditions)
- Minimum delay between two messages from same campaign - To control the user experience, marketers can add a minimum time delay between two messages from the same campaign. If another messages is generated before the delay is over, message won't be served.
- Expiry time for Sync Data - Allows you to, periodically, purge the campaigns that have been sync-ed so that you don’t end up serving old messages for long e.g. if set to 7 days, sync-ed campaigns won't be served after 7 days unless sync happens again.
- Ignore Frequency Capping - Used for messages that are urgent in nature and shall be always served ignoring channel's capping policies.
- Ignore DND Period - Used for messages that are urgent in nature and shall be always served even if trigger is generated during Do Not Disturb period set on the account level
- Serve in offline mode - If checked, message will be served even if user is doing the trigger event in offline mode i.e. user is not connected to internet. Read below in detail about Offline Triggers.
Online triggers are served when end user is online and executes a trigger event. All the conditions are checked in the real-time and user is shown the notification, if eligible.
The device triggers come with an exceptional capability to serve the message, on trigger event, even if the end user is offline i.e. not connected to internet.
Offline triggers deliver the messages that have been previously sync-ed. Sync-ing of messages happens when user, connected to internet, opens his/her application on which MoEngage SDK exists.
Since offline triggers are served basis last sync data, this exceptional capability of serving Offline trigger messages comes with a few limitations:
- Segmentation: Offline triggers assume that user fulfills/does not fulfills the campaign segmentation criteria as per the last sync instance. e.g. At time of campaign sync, user was eligible for campaign C1. Now if user goes offline and executes the trigger event, he/she will be served the message.
- Frequency capping (setting of how many notifications should be served across push channel) won’t be checked for Offline Trigger messages. We will keep on serving the trigger, as many times as user generates a trigger event.
- Personalization: Event personalization won’t work if offline. Other personalization will work as per the last sync-ed values.
- Campaign Performance stats (like Impressions and Clicks) for Offline trigger messages will be registered with MoEngage server only when user connects to internet after being served the notification.
- Campaign Editing - Say a campaign is created, sync-ed once and then edited. If user does not open the app after first sync and goes offline, offline trigger will be served as per old configuration.