In the article, we will explain when cards are synced with the SDK and how the SDK interacts with the MoEngage servers to fetch the cards.
When are cards available for a user?
Once you create and publish a card campaign, MoEngage server stores the card for each individual in the segmentation. Once the campaign is fully sent, we can confirm that by that time, all the users should have the cards. Now, it's time to see the card on the app.
When does SDK sync cards from the server?
MoEngage SDK pulls the cards information for a user in the following scenarios.
- When a user opens the app after it's killed, the MoEngage SDK checks with the server to see any cards in the user's Inbox.
- When a user opens the app from the background, SDK will sync the cards only if 45 minutes have passed from the last sync.
- If the user opens the cards inbox, the SDK will sync the cards only if 15 minutes have passed from the last sync.
- If the user does a pull gesture to sync the cards, the SDK will sync the cards only if 5 seconds have passed from the last sync.
You can raise a support ticket to configure different values for the syncs.
Common mistakes while testing Cards
- When you have installed the app for the first time, usually, the cards are pulled on the app open for an anonymous user. When you open the card inbox immediately after you log in, you will see the cards for anonymous user rather than for logged-in user. To see the cards for logged-in users, we recommend killing the app after you log in and opening the app again so that the cards are synced for the right user.